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