【问题标题】:Using Apache Commons File Upload使用 Apache Commons 文件上传
【发布时间】:2013-10-27 01:15:26
【问题描述】:

我正在尝试将 pdf 文件上传到 ftp 服务器。我的代码有点像这样:

public void pdfUpload(String ticket, JLabel message) {     

FTPClient client = new FTPClient(); 
        FileInputStream fis = null;
        try {
            client.connect("www.mydomain.com", 21);
            client.login("user", "userpass");


            client.setFileType(FTP.BINARY_FILE_TYPE); // optional


            String FileName = ticket.replace("/", "_");
            File fil = new File("pdf\\"+FileName+".pdf");
            message.setText(FileName+".pdf is being uploaded... Please wait" );
            fis = new FileInputStream(fil);

            String remoteFile = fil.getName();
            client.storeFile(remoteFile, fis);
            client.logout();
            message.setText("File Uploaded sccessfully");
        } 

        catch (IOException e) {
            message.setText("Failed to upload pdf file"+e);
        } finally {
            try {
                if (fis != null) {
                    fis.close();
                }
                client.disconnect();
            } catch (IOException e) {
            message.setText("Failed to upload pdf file");
            }
        }    
}

该方法显示文件已上传,该方法执行正常。并显示完成消息。但我在 ftp 中找不到该文件。这意味着文件未上传。我的代码有什么问题。请帮忙。

【问题讨论】:

    标签: java apache file-upload ftp


    【解决方案1】:

    登录后尝试调用 enterLocalPassiveMode。

    这可能是很多事情,因为 FTP 服务器是不可预测的小怪物,但这就是我闻起来的味道。

    【讨论】:

      【解决方案2】:

      看起来您的文件路径在远程系统上作为文件名无效,或者它没有根据文件路径名格式按预期存储它。保存到远程系统时,请尝试仅使用不带“pdf\\”前缀的文件名。

      【讨论】:

        猜你喜欢
        • 2010-11-11
        • 1970-01-01
        • 2011-01-10
        • 2011-08-18
        • 1970-01-01
        • 1970-01-01
        • 2012-02-28
        • 2015-12-23
        • 2012-12-11
        相关资源
        最近更新 更多