[英]How to close a Zehon FTP connection
在代碼的某一時刻,我必須將70-80個文件上傳到FTP服務器。
最好的情況是創建一個連接,上傳20個文件,然后關閉它。 這樣做直到所有文件都被上傳。 我為每個文件嘗試了不同的連接...那是一場災難。
但是,我找不到任何允許我關閉連接的disconnect()或close()函數...我發現的只是靜態函數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;
}
}
沒關系,我使用了Apache Commons庫,該庫完成了我所需的工作,並且對開發更靈活。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.