我对 Java 还是很陌生,并且正在制作一个小程序,它必须检查一个文件夹,里面装满了数千个文件,这些文件以它们以某种格式创建的日期命名(YYYYMMDD
例如20130228
,将它们移动到新目录中。目前我的代码可以扫描文件夹并给我一个文件名列表,如果它发现有多个文件,它会创建它们需要移动到的文件夹,但我将如何实际去做检查文件名并移动它们是否超过 7 天?
这是我到目前为止所拥有的:
public static void main(String[] args) {
Date date = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("YYYY-MM-DD");
// Gets a list of files in specified folder
File folder = new File("C:/Users/workspace/Test");
File[] listOfFiles = folder.listFiles();
for (File file : listOfFiles) {
if (file.isFile()) {
System.out.println(file.getName());
}
}
// Creates a temp folder with the date if files are in the specified folder
File file = new File("C:/Users/workspace/Test");
if (file.isDirectory()) {
String[] files = file.list();
if (files.length > 0) {
File dir = new File("Temp " + (dateFormat.format(date)));
dir.mkdir();
}
}
}