0
在我的代码中,我必须将70-80个文件上传到FTP服务器。如何关闭一个Zehon FTP连接
最佳方案是创建连接,上传20个文件,关闭它。直到所有文件上传。 我为每个文件尝试了不同的连接......这是一场灾难。
但是,我找不到任何断开()或关闭()函数,这将允许我关闭连接...我发现的唯一的东西是一个静态函数closeCache(),只建议在关闭软件...所以不是真的为我工作...
而且我上传25个文件后总是收到'服务器关闭连接'异常。
我可能可能没有完全理解这个API。
public static boolean uploadFiles() {
int count = 0;
FTPClient ftpClient = new FTPClient(SERVER, USER, PASSWORD);
try {
if (!Tools.isListNullOrEmpty(xmlFilesToBeUploaded)) {
for (File xmlFile : xmlFilesToBeUploaded) {
if (count == MAX_FILES_PER_CONNECTION) {
count = 0;
ftpClient = null;
ftpClient = new FTPClient(SERVER, USER, PASSWORD);
}
// "/" for root folder
ftpClient.sendFile(xmlFile.getAbsolutePath(), "/");
count++;
}
}
xmlFilesToBeUploaded = null;
if (!Tools.isListNullOrEmpty(imageFilesToBeUploaded)) {
for (File imageFile : imageFilesToBeUploaded) {
if (count == MAX_FILES_PER_CONNECTION) {
count = 0;
ftpClient = null;
ftpClient = new FTPClient(SERVER, USER, PASSWORD);
}
// "/" for root folder
ftpClient.sendFile(imageFile.getAbsolutePath(), "/" + IMAGES_FOLDER);
count++;
}
}
imageFilesToBeUploaded = null;
return true;
} catch (FileTransferException e) {
Log.error(e);
return false;
}
}