问题发生:
环境:VSFTP FTPClient Client
使用FTPClient上传文件的时候总是卡住,而且文件大小为0,上传失败,
解决方案:
添加代码:调用FTPClient的enterLocalPassiveMode();方法,设置为被动模式,既可以解决。
代码语言:javascript复制 //FTPClient 的使用
public void FTPClientTest() throws Exception {
//创建 FTPClient 对象
FTPClient ftp = new FTPClient();
//链接 端口使用的 21
ftp.connect("169.254.18.16", 21);
//给定用户名与密码,链接时完成登录
ftp.login("ftpuser", "ftpuser");
ftp.enterLocalPassiveMode();
//操作上传文件
InputStream is = new
FileInputStream("d:/java.jpg");
//指定上传文件的保存目录
ftp.changeWorkingDirectory("/home/ftpuser/casual");
//开启字节流传输
ftp.setFileType(FTPClient.BINARY_FILE_TYPE);
//文件上传
boolean b = ftp.storeFile("aa.jpg", is);
System.out.println(b);
//退出登录
ftp.logout();
}