說明:試圖刪除服務器上的內容,這些代碼 相當有幫助;當我需要刪除tomcat下的任意文件夾的內容時,只需要改變類中 PATH 的值就可以,非常有用;
這個代碼是刪除tomcat下的temp文件中的圖片,但我需要刪除其他文件下的其他內容時,用這個代碼改改就行了。
import java.io.File;
import org.apache.log4j.Logger;
public class ClearTempImg {
private static final Logger logger = Logger.getLogger(ClearTempImg.class);
private final static String FS = System.getProperty("file.separator");
private static String TOMCAT_HOME = System.getProperty("catalina.home");
private static String PATH = "temp";
private static final String TEMP_PATH = TOMCAT_HOME + FS + PATH + FS;
private static boolean isRunning = false;
public void run() {
if (!isRunning) {
logger.debug("刪除/Tomcat/Temp/目錄下過期圖片執行開始...");
isRunning = true;
logger.debug("開始執行刪除tomcat下temp文件夾png文件任務");
logger.debug("要刪除圖片文件所在路徑為" + TEMP_PATH);
File fileTemp = new File(TEMP_PATH);
// 判斷文件是否存在
boolean falg = false;
falg = fileTemp.exists();
if (falg) {
logger.debug("temp文件存在");
if (true == fileTemp.isDirectory()) {
logger.debug("temp文件是個目錄");
String[] png = fileTemp.list();
for (int i = 0; i < png.length; i++) {
if (true == png[i].endsWith("png")) {
File file = new File(TEMP_PATH + FS + png[i]);
if (true==file.isFile()) {
boolean flag = false;
flag = file.delete();
if (flag) {
logger.debug("成功刪除無效圖片文件:" + file.getName());
}
}
}
}
}
} else {
logger.debug("未找到tomcat/temp文件夾,執行失敗,請手動刪除temp下所有png文件");
}
isRunning = false;
logger.debug("刪除/Tomcat/Temp/目錄下過期圖片執行結束...");
}
}
}