gpt4 book ai didi

java - Zip 文件上传到服务器时损坏

转载 作者:行者123 更新时间:2023-12-02 11:12:20 27 4
gpt4 key购买 nike

我的 java 程序将 zip 文件从我的系统上传到 FTP 服务器。 uploadfile() 是一个包含上传代码的函数。

uploadfile("192.168.0.210","muruganp","vm4snk","/home/Admin/GATE521/LN_RB_Semivalid2junk/Output/"+date+"_RB1.zip","/fileserver/filesbackup/Emac/"+date+"_RB1.zip");

public static boolean uploadfile(String server, String username,
String Password, String source_file_path, String dest_dir) {
FTPClient ftp = new FTPClient();
try {
int reply;
ftp.connect(server);
ftp.login(username, Password);
System.out.println("Connected to " + server + ".");
System.out.print(ftp.getReplyString());
reply = ftp.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
ftp.disconnect();
System.err.println("FTP server refused connection.");
return false;
}
System.out.println("FTP server connected.");
InputStream input = new FileInputStream(source_file_path);
ftp.storeFile(dest_dir, input);
System.out.println(ftp.getReplyString());
input.close();
ftp.logout();
} catch (Exception e) {
System.out.println("err");
e.printStackTrace();
return false;
} finally {
if (ftp.isConnected()) {
try {
ftp.disconnect();
} catch (Exception ioe) {}
}
}
return true;
}

我系统中的 zip 文件非常完美。但是在服务器位置上传相同的内容、下载相同的内容并解压后,就会出现问题。错误提示“文件已损坏”。我应该怎么做才能解决这个问题。请就此提出建议。

我怀疑问题可能是通过 ASCII 模式传输。它实际上应该按照此 QUESTION 通过二进制模式传输。如何达到同样的效果?请指教。

最佳答案

最好的猜测是 FTP 上传使用的是 ascii 模式,这会损坏 zip 等二进制文件。验证这一点,如果是这样,请将其更改为二进制模式。

关于java - Zip 文件上传到服务器时损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3983018/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com