안드로이드 개발 질문/답변
(글 수 45,052)
코드에 오류는 없습니다만..
실행을 시키면 오류메시지가 뜹니다..
배열 초기화부분에 문제가 있는것같은데..
고심해봐도 도저히 모르겠어서 이렇게 질문드립니다.
try{
FTPClient con = new FTPClient();
con.connect(Server, 21);//서버접속
con.login(ID, PassWord);
con.enterLocalPassiveMode(); //패시브모드로 전환합니다.
con.setFileType(con.BINARY_FILE_TYPE); //파일형식을 이진파일 형식으로 설정합니다.
con.changeWorkingDirectory("/");
FTPFile[] files=con.listFiles();
ArrayList<String> items = new ArrayList<String>();
for(int i=0; i<(files.length)-1; i++){
String fileSize;
if(files[i].getSize()>=1000000)
fileSize=String.format("%.1f",Double.valueOf(((double)(files[i].getSize())/((double)(1048576))) ))+"MB";
else if(files[i].getSize()>=1000)
fileSize=String.format("%.1f",Double.valueOf(((double)files[i].getSize())/((double)(1024))))+"KB";
else
fileSize=Long.toString(files[i].getSize())+"bytes";
items.add(files[i].getName().toString()+" "+fileSize);
}
Log.v("HID", "Settings SUCCESS!!");
}catch (Exception e) //예외처리
{
e.printStackTrace();
}
ArrayAdapter<String>aa=new ArrayAdapter<String>(DownloadActivity.this,R.layout.downloadrow,R.id.label,items);
setListAdapter(aa);
tv=(TextView)findViewById(R.id.selection);
}
public void onListItemClick(ListView l,View v,int position, long id){
}
}
FTPClient con = new FTPClient();
con.connect(Server, 21);//서버접속
con.login(ID, PassWord);
con.enterLocalPassiveMode(); //패시브모드로 전환합니다.
con.setFileType(con.BINARY_FILE_TYPE); //파일형식을 이진파일 형식으로 설정합니다.
con.changeWorkingDirectory("/");
FTPFile[] files=con.listFiles();
ArrayList<String> items = new ArrayList<String>();
for(int i=0; i<(files.length)-1; i++){
String fileSize;
if(files[i].getSize()>=1000000)
fileSize=String.format("%.1f",Double.valueOf(((double)(files[i].getSize())/((double)(1048576))) ))+"MB";
else if(files[i].getSize()>=1000)
fileSize=String.format("%.1f",Double.valueOf(((double)files[i].getSize())/((double)(1024))))+"KB";
else
fileSize=Long.toString(files[i].getSize())+"bytes";
items.add(files[i].getName().toString()+" "+fileSize);
}
Log.v("HID", "Settings SUCCESS!!");
}catch (Exception e) //예외처리
{
e.printStackTrace();
}
ArrayAdapter<String>aa=new ArrayAdapter<String>(DownloadActivity.this,R.layout.downloadrow,R.id.label,items);
setListAdapter(aa);
tv=(TextView)findViewById(R.id.selection);
}
public void onListItemClick(ListView l,View v,int position, long id){
}
}
FTP서버에 접속해서 그 파일 리스트들을 보여주는 부분인데, 리스트뷰를 잘못사용하여 주었는지
오류가 자꾸 떠버립니다. 어떻게 하면 좋을지요




어레이로 변경하셔서 처리하셨으니 배열사이즈 문제는 해결되셨을텐데 리스트쪽 오류라면 로그를 봐야 알수 있지 싶습니다.
리스트가 문제가 생길만한곳이라곤 어댑터쪽 밖에는 예상되지 않는데...