Java FTP upload creates an empty file(Java FTP上传创建一个空文件)
问题描述
当我尝试使用 Apache Commons FTPClient 上传一个简单的文本文件时:
When I try to upload a simple text file with the Apache Commons FTPClient and this code:
FTPClient ftp = new FTPClient();
int reply;
// connect
try {
ftp.connect(serverAdd);
ftp.login(username,password);
reply = ftp.getReplyCode();
if(FTPReply.isPositiveCompletion(reply)){
System.out.println("Connected Success..");
// upload file
try {
String fileDir = "testfile.txt";
FileInputStream in = null;
in = new FileInputStream(fileDir);
ftp.storeFile(fileDir,in);
System.out.println("File upload complete..");
}catch(IOException e){
System.out.println(e);
}
ftp.disconnect();
System.out.println("Disconnected..");
}else {
System.out.println("Connection Failed..");
ftp.disconnect();
}
} catch (SocketException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}
在 FTP 服务器的根目录中创建了一个文件,但它是空的.怎么了?上传 PDF 文件时,我已经尝试将 ftp 模式更改为 BINARY.但文件大小也是 0.
A file gets created in the root of the FTP server but it is empty. What's wrong? I already tried to change the ftp mode to BINARY when uploading a PDF file. But the file is also 0 in size.
ftp.setFileType(FTP.BINARY_FILE_TYPE);
我也只想上传一堆txt文件,所以默认ascii模式应该没问题吧?
I also only want to upload a bunch of txt files, so the default ascii mode should be fine, right?
推荐答案
好吧,看来是我的防火墙问题了.当我停用防火墙时,文件会毫无问题地写入 ftp.
ok, it seems that it is a probem with my firewall. when I deactivate the firewall the file gets written to the ftp with no problem.
这篇关于Java FTP上传创建一个空文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Java FTP上传创建一个空文件
基础教程推荐
- 多个组件的复杂布局 2022-01-01
- 大摇大摆的枚举 2022-01-01
- Java Swing计时器未清除 2022-01-01
- 验证是否调用了所有 getter 方法 2022-01-01
- 从 python 访问 JVM 2022-01-01
- 如何在 JFrame 中覆盖 windowsClosing 事件 2022-01-01
- Java 实例变量在两个语句中声明和初始化 2022-01-01
- 如何在 Spring @Value 注解中正确指定默认值? 2022-01-01
- 在 Java 中创建日期的正确方法是什么? 2022-01-01
- 不推荐使用 Api 注释的描述 2022-01-01
