Java FTP xls文件上载

Java FTP xls文件上载,java,file-upload,ftp,ftp-client,apache-commons-net,Java,File Upload,Ftp,Ftp Client,Apache Commons Net,我正在尝试将文件上载到Java类中的FTP服务器。 我使用apache库:org.apache.commons.net.ftp.FTPClient。 在我尝试上载XLS(Excel)文件之前,上载功能工作正常。 特别是,当我上传它时,文件被上传了,但它似乎被破坏了。事实上,它的大小与原始大小不同,当我试图打开它时,它无法正确打开,也无法显示所有数据 以下是我使用的代码的一部分: FTPClient ftpClient = new FTPClient(); File[] fileList;file

我正在尝试将文件上载到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();
}

非常感谢您提供的任何帮助。

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

我只需要为非.txt文件设置二进制文件模式:

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

非常感谢你!另外,作为旁注,您可以直接从类FTP而不是FtpClient访问这些常量。。。