2013-04-05 3 views
0

Я прошел через много дискуссий о загрузке файлов с FTP server.I думают, что есть 2 способа подключения и загрузки:как подключиться к FTP-сервер с андроида

1: Я должен использовать апачскую библиотеку и использовать свои классы как ftpclient.

2: С URLConnection, как этот код:

public void getFile(URL u) throws IOException { 
     // url de type "http://www.monsite.com/monrep/mavideo.wmv" 
     String FileName = u.getFile(); 
     FileName = FileName.substring(FileName.lastIndexOf('/') + 1); 
     URLConnection uc = u.openConnection(); 
     int FileLenght = uc.getContentLength(); 
     if (FileLenght == -1) { 
      monView2.setText("Fichier non valide:"+ FileName); 
     } 

     try 
     { 
      InputStream myInput = uc.getInputStream(); 
      String outFileName = "/sdcard/GPTO/"+ NomParcours + "/" + FileName; 
      FileOutputStream myOutPut = new FileOutputStream(outFileName); 
      byte[]buff = new byte[1024]; 
      int l = myInput.read(buff); 

      while(l>0) 
      { 
       myOutPut.write(buff, 0, l); 
       l = myInput.read(buff); 
      } 
      myOutPut.flush(); 
      myOutPut.close(); 
     } 
     catch(Exception e) 
     { 
     monView2.setText(e.toString()); 
     } 
} 

Пожалуйста, направьте меня в правильном направлении, я новичок в Android, и я знаю только основы, что это правильный путь, чтобы достигнуть того же самого?

+0

НЕ ПРОСТОЙ КОДИРОВАНИЕ sdcard путь 'String outFileName ="/sdcard'. Используйте класс 'Environment' для получения допустимого пути –

ответ

0
ftpClient.connect(InetAddress.getByName(server)); 
ftpClient.login(user, password); 
ftpClient.changeWorkingDirectory(serverRoad); 
ftpClient.setFileType(FTP.BINARY_FILE_TYPE); 
BufferedInputStream buffIn=null; 
buffIn=new BufferedInputStream(new FileInputStream(file)); 
ftpClient.enterLocalPassiveMode(); 
ftpClient.storeFile("mysampletext.txt", buffIn); 
buffIn.close(); 
ftpClient.logout(); 
ftpClient.disconnect(); 

Используйте этот код после импорта библиотеки ftp. link

+0

hy Arun C Thomas, я использую ваш пример, но метод ftpclient.login() возвращает false почему ?? –