FTPClient在上传到android上的ftp服务器时会破坏图像?

osm*_*tib 7 java ftp android ftp-client apache-commons-net

我正在尝试从Android手机(HTC Desire HD)上传图像到FTP服务器(在我的本地PC上).图像将进入FTP服务器,但它们已损坏.

并且方法(ftpClient.storeFile())抛出IOException(错误的文件号)

请帮我.

这是损坏的图像链接:

http://imageshack.us/photo/my-images/820/komikb.jpg/

这是代码:

FTPClient ftpClient = new FTPClient();
    try {
        ftpClient.connect("192.168.2.14");
        ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
        ftpClient.setFileTransferMode(FTP.BINARY_FILE_TYPE);
        ftpClient.setSoTimeout(10000);
        ftpClient.enterLocalPassiveMode();
        if(ftpClient.login("Administrator", "xxxx"))
        {
            File sFile=new File("mnt/sdcard/DCIM/komik.jpg");
            FileInputStream fs= new FileInputStream(sFile);
            String fileName = sFile.getName();
            Boolean result = ftpClient.storeFile("/ftpfile.atspace.co.uk/" + fileName, fs);
            String has = "";
        }
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
Run Code Online (Sandbox Code Playgroud)

osm*_*tib 2

问题解决了。FTPClient 类存在“最后一个数据包数据丢失错误”。但这在 3.0.1 23.05.2011 版本中得到了解决。

您可以从有关错误的详细解释中看到: https ://issues.apache.org/jira/browse/NET-409

您可以下载修复版本 https://repository.apache.org/content/repositories/snapshots/commons-net/commons-net/3.0.1-SNAPSHOT/

  • 你好,sujit,apache FTPClient 有很多错误。这个问题就解决了。后来出现了另一个问题,我开始使用ftp4j。这是链接:http://www.sauronsoftware.it/projects/ftp4j/ 我建议您使用这个组件。 (3认同)