一段 定时自动清理系统临时文件的 Java代码_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 一段 定时自动清理系统临时文件的 Java代码

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

 2018/1/26 19:00:14  huangqiqing123  程序员俱乐部  我要评论(0)
  • 摘要:/***清理系统临时目录下,文件名为指定前缀的文件。*@paramfilenamePrefix文件名前缀*@paramminutes几分钟执行一次清理操作*/publicvoidcleanTempFile(StringfilenamePrefix,intminutes){Timertimer=newTimer();timer.schedule(newTimerTask(){@Overridepublicvoidrun(){Stringtmpdir=System.getProperty
  • 标签:文件 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分钟执行一次
	}

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

上一篇: BSD正在死亡? 下一篇: 工厂模式
发表评论
用户名: 匿名