2 回答

TA貢獻1788條經驗 獲得超4個贊
使用*
是不行的。在您獲得聲明目錄中的文件列表后,您必須迭代它并使用deleteFile(String pathname)
(同時檢查文件名endsWith(".txt")
)一個一個地刪除文件。
各有FTPFile
辦法getName()
。您應該構建完整路徑,以便FTPClient
知道要刪除的文件。我相信它會是這樣的:
ftpClient.deleteFile("/prenotazioni/" + remoteFiles[i].getName());

TA貢獻1155條經驗 獲得超0個贊
完整方法:
public static void deleteFilesInFolderFtp(String dirPath, FTPClient ftpClient) {
try {
// use local passive mode to pass firewall
ftpClient.enterLocalPassiveMode();
FTPFile[] remoteFiles = ftpClient.listFiles("/" + dirPath);
if (remoteFiles.length > 0) {
for (int i = 0; i < remoteFiles.length; i++) {
ftpClient.deleteFile("/" + dirPath + "/" + remoteFiles[i].getName());
}
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
添加回答
舉報