【发布时间】:2020-02-08 11:29:34
【问题描述】:
我目前正在使用 Java 开发一个小型清单生成器程序。我想将创建的文件上传并下载到我的 FTP 服务器 (ftps)。我正在使用以下代码进行下载:
public static void downloadfile(){
FTPSClient con = null;
System.out.println("Download Status: 5%");
try
{
System.out.println("Download Status: 20%");
con = new FTPSClient();
con.connect(url);
if (con.login(user, psw))
{
System.out.println("Download Status: 50%");
con.enterLocalPassiveMode(); // important!
con.setFileType(FTP.BINARY_FILE_TYPE);
String data = "E:\\Downloads\\Testdokument.txt";
OutputStream out = new FileOutputStream(new File(data));
boolean result = con.retrieveFile("Testdokument.txt", out);
out.close();
System.out.println(result);
if (result) {
System.out.println("Download Status: 100%");
} else if(result == false) {
System.out.println("Download won't work");
}
con.logout();
con.disconnect();
}
}
catch (Exception e)
{
System.out.println("download failed");
e.printStackTrace();
}
}
问题是下载本身工作正常。但是下载的文件是空的。如果我用图像尝试它不是“可读的”。相反,上传工作完美。我使用 Apache Common IO Library 来实现 FTP 功能。
如果我下载文件,控制台会显示第一个状态 5%、20%、50%,然后添加错误语句后,下载将无法工作...
我不知道为什么文件本身正在下载但不包含任何内容。
有什么想法吗?
【问题讨论】:
-
本地数据文件是否存在?父目录存在吗?
标签: java file download ftp is-empty