gpt4 book ai didi

java - 无法使用 Apache commons-net-3.1 在 FTP 上上传大文件

转载 作者:行者123 更新时间:2023-12-01 05:24:56 32 4
gpt4 key购买 nike

我正在尝试使用 FTPClient 的 storeFile(remote, local) 方法上传一个大文件(超过 8 MB),但结果为 false。它会上传一些额外的字节。以下是输出代码:

public class Main {
public static void main(String[] args) {
FTPClient client = new FTPClient();
FileInputStream fis = null;

try {

client.connect("208.106.181.143");
client.setFileTransferMode(client.BINARY_FILE_TYPE);
client.login("abc", "java");
int reply = client.getReplyCode();
System.out.println("Received Reply from FTP Connection:" + reply);

if(FTPReply.isPositiveCompletion(reply)){
System.out.println("Connected Success");
}

client.changeWorkingDirectory("/"+"Everbest"+"/");
client.makeDirectory("ETPSupplyChain5.3-EvbstSP3");
client.changeWorkingDirectory("/"+"Everbest"+"/"+"ETPSupplyChain5.3-EvbstSP3"+"/");
FTPFile[] names = client.listFiles();
String filename = "E:\\Nitin\\D-Drive\\Installer.rar";

fis = new FileInputStream(filename);

boolean result = client.storeFile("Installer.rar", fis);
int replyAfterupload = client.getReplyCode();
System.out.println("Received Reply from FTP Connection replyAfterupload:" + replyAfterupload);
System.out.println("result:"+result);
for (FTPFile name : names) {
System.out.println("Name = " + name);
}

client.logout();

fis.close();



client.disconnect();
} catch (SocketException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}




o/p:
Received Reply from FTP Connection:230
Connected Success
32 /Everbest/ETPSupplyChain5.3-EvbstSP3
Received Reply from FTP Connection replyAfterupload:150
result:false

最佳答案

首先,8 Mb 文件并不是一个大文件。我成功地使用这个库上传了大于 100Mb 的文件。

在带有参数BINARY_FILE_TYPEstoreFile方法之前调用setFileType方法。它告诉服务器您的文件不应存储为 ASCII。

最后,尝试在 storeFile 方法之后关闭 FileInputStream。并捕获 close 方法的结果。

关于java - 无法使用 Apache commons-net-3.1 在 FTP 上上传大文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9820864/

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