java定期清理代码_一段 定时自动清理系统临时文件的 Java代码

  • Post author:
  • Post category:java


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分钟执行一次

}

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?



版权声明:本文为weixin_42314680原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。