2015-10-28 113 views
0

我有這個代碼通過FTP發送文件通過FTP的Android

FTPClient con = null; 

    try 
    { 
     con = new FTPClient(); 
     con.connect("192.168.1.100"); 

     if (con.login("gustavo", "gustavo")) 
     { 
      con.enterLocalPassiveMode(); // important! 
      con.setFileType(FTP.BINARY_FILE_TYPE); 
      String data = "/data/data/com.prosec/files/WhiteList.txt"; 
      System.out.println("chguei aqui"); 

      FileInputStream in = new FileInputStream(new File(data)); 
      boolean result = con.storeFile("/data/data/com.prosec/files/WhiteList.txt", in); 
      in.close(); 
      if (result) Log.v("upload result", "succeeded"); 
      con.logout(); 
      con.disconnect(); 
     } 
    } 
    catch (Exception e) 
    { 
     e.printStackTrace(); 
     System.out.println("erro web"); 
    } 

發送的文件在我的FTP服務器,艾收到此消息

(000011)28/10/2015 12:50:16 - gustavo (192.168.1.101)> STOR /data/data/com.prosec/files/WhiteList.txt 
(000011)28/10/2015 12:50:16 - gustavo (192.168.1.101)> 550 Filename invali 

但該文件存在

PROSEC是我的包的名字,所以,我應該有接取/數據/數據/ PROSEC

我怎麼能在這個直銷發送文件保守黨?

回答

0

使用ContextWrapper.getFilesDir()得到的不是硬目錄對其進行編碼。這可能解決你的問題?讓我知道。

+0

這樣嗎? String data =(ContextWrapper.getFilesDir()+「WhiteList.txt」); –

+0

'String data = ContextWrapper.getFilesDir()+ WhiteList.txt;'不需要額外的括號。 - 確保你的文件名是正確的。 – vguzzi