package cn.itcast_12;
import java.io.File;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
/*
* 需求:在指定的时间删除我们的指定目录(demo文件夹以及文件夹下的文件)
* 递归删除目录
*/
class DeleteFolder extends TimerTask {
private Timer t;
public DeleteFolder() {
super();
}
public DeleteFolder(Timer t) {
super();
this.t = t;
}
@Override
public void run() {
File srcFolder = new File("demo");
deleteFolder(srcFolder);
System.out.println("删除成功");
t.cancel();
}
// 递归删除目录
private void deleteFolder(File srcFolder) {
File[] fileArray = srcFolder.listFiles();
if (srcFolder != null) {
for (File file : fileArray) {
if (file.isDirectory()) {
deleteFolder(file);
} else {
System.out.println(file.getName() + ":" + file.delete());
}
}
System.out.println(srcFolder.getName() + ":" + srcFolder.delete());
}
}
}
public class TimerTest {
public static void main(String[] args) throws ParseException {
// 创建定时器
Timer t = new Timer();
// 创建时间对象
String dates = "2017-03-21 23:03:20";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d = sdf.parse(dates);
// 执行定时任务
t.schedule(new DeleteFolder(t), d);
}
}
多线程_定时删除指定的带内容目录
最新推荐文章于 2022-04-30 16:52:55 发布
