Java FTP xls文件上传

发布于 2024-12-04 13:35:25 字数 562 浏览 1 评论 0原文

我正在尝试将文件上传到 Java 类中的 FTP 服务器。 我使用 apache 库:org.apache.commons.net.ftp.FTPClient。 上传功能工作正常,直到我尝试上传 XLS (Excel) 文件。 特别是,当我上传时,文件已上传,但似乎已损坏。事实上,它的大小与原始大小不同,当我尝试打开它时,它无法正确打开并且不显示所有数据。

这是我使用的代码的一部分:

FTPClient ftpClient = new FTPClient();
File[] fileList;fileList = localFilePath.listFiles();
for (File file : fileList) {
    String fileName = file.getName();
    FileInputStream fileInputStream = new FileInputStream(file);
    ftpClient.storeFile(fileName, fileInputStream);
    fileInputStream.close();
}

非常感谢您的任何帮助。

I am trying to upload files to a FTP Server in a Java class.
I use apache library: org.apache.commons.net.ftp.FTPClient.
The upload function works fine until I try to upload a XLS (Excel) file.
In particular, when I upload it, the file is uploaded, but it seems to be corrupted. In fact its size is different from the original size and when I try to open it, it doesn't open correctly and doesn't show all the data.

Here is a portion from the code I use:

FTPClient ftpClient = new FTPClient();
File[] fileList;fileList = localFilePath.listFiles();
for (File file : fileList) {
    String fileName = file.getName();
    FileInputStream fileInputStream = new FileInputStream(file);
    ftpClient.storeFile(fileName, fileInputStream);
    fileInputStream.close();
}

Thank you very much for any kind of help.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

旧伤慢歌 2024-12-11 13:35:25

我使用此线程中的建议解决了问题:

Transfer raw binary with apache commons-net FTPClient?

我所需要做的就是为非 .txt 文件设置二进制文件模式:

if (fileExtension.equals("txt")) {
    ftpClient.setFileType(FTPClient.ASCII_FILE_TYPE);
} else {
    ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
}

I solved the problem using the suggestion in this thread:

Transfer raw binary with apache commons-net FTPClient?

All I needed to do was setting binary file mode for non .txt files:

if (fileExtension.equals("txt")) {
    ftpClient.setFileType(FTPClient.ASCII_FILE_TYPE);
} else {
    ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文