使用FTPClient上传excel文件至ftp后,提示文件损坏

robotsz 2017-10-20 05:27:09
代码如下:

String url = "10.100.xxx.xx";
int port = 21;
String ftpusername = "xxxxxxxxxxx";
String ftppassword = "xxxxxxxxxxx";
String path = "xxxxxxxxxxxxxxxx";



FTPClient ftp = new FTPClient();
try {
int reply;
FileInputStream fileUp=new FileInputStream(new File("a.xls"));
ftp.connect(url, port);//连接FTP服务器
//如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器
ftp.login(ftpusername, ftppassword);//登录
reply = ftp.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
ftp.disconnect();

}
ftp.changeWorkingDirectory(path);
ftp.storeFile("a.xls", fileUp);

fileUp.close();
ftp.logout();

System.out.println("ok");
} catch (IOException e) {
e.printStackTrace();
} finally {
if (ftp.isConnected()) {
try {
ftp.disconnect();
} catch (IOException ioe) {
}
}
}



本地可以正常打开a.xls,ftp服务器上也能看到a.xls的文件,但是打开就提示文件损坏。

如果上传txt文件,就可以正常打开。

什么问题呢?
...全文
1025 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ChaofanBdd 2019-03-19
  • 打赏
  • 举报
回复 1
引用 3 楼 ChaofanBdd 的回复:
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
加上这句话就可以了
ChaofanBdd 2019-03-19
  • 打赏
  • 举报
回复
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
charmsongo 2019-01-09
  • 打赏
  • 举报
回复
怎么设置文件传输格式的?可以说下吗,现在我也遇到了这个问题
robotsz 2017-10-23
  • 打赏
  • 举报
回复
自己搞定了,需要设置文件传输格式

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧