class=”java”>/**
* 清理系统临时目录下,文件名为指定前缀的文件。
* @param filenamePrefix 文件名前缀
* @param minutes 几分钟执行一次清理操作
*/
public void cleanTempFile(String filenamePrefix,int minutes) {
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
String tmpdir = System.getProperty(“java.io.tmpdir”);
File dir = new File(tmpdir);
String arr[] = dir.list();
if (arr != null) {
for (String fileName : arr) {
if (fileName.startsWith(“zuul-servo-metrics”)) {
deleteDir(new File(tmpdir + fileName));
}
}
}
}
private boolean deleteDir(File dir) {
try {
if (dir.isDirectory()) {
String[] children = dir.list();
// 递归删除目录中的子目录下
for (int i = 0; i < children.length; i++) {
boolean success = deleteDir(new File(dir,children[i]));
if (!success) {
return false;
}
}
}
// 目录此时为空,可以删除
return dir.delete();
} catch (Exception e) {
return false;
}
}
}, 0, minutes * 60 * 1000);// 每5分钟执行一次
}
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?