gpt4 book ai didi

java - 获取 Java 目录中最近 7 天内修改的所有文件

转载 作者:塔克拉玛干 更新时间:2023-11-01 23:08:09 24 4
gpt4 key购买 nike

我想使用 Java 获取过去 7 天内修改过的文件。获得文件后,我需要它来进行其他文件操作。

现在我可以从目录中获取所有文件并执行我的文件操作。请建议我如何获取最近 7 天内修改的文件。

下面是我用来从目录中获取文件并进行文件操作的代码。

String target_dir = "D:/Reports/Project";
File dir = new File(target_dir);
File[] files = dir.listFiles();
int count = 0;
for (File f : files) {
if(f.isFile()) {
BufferedReader inputStream = null;
FileReader in = null;
try {
// Working Code
}catch (Exception e) {
System.out.println("Error while retreiving files ");
}
finally {
if (inputStream != null) {
inputStream.close();
}
}
}

请推荐。提前致谢。

最佳答案

public static void main(String[] args) throws IOException {
String dir = "myDirectory";

// cutoff date:
Instant lastWeek = Instant.now().minus(7, ChronoUnit.DAYS);

// find with filter
Files.find(Paths.get(dir), Integer.MAX_VALUE,
(p, a) -> {
try {
return Files.isRegularFile(p)
&& Files.getLastModifiedTime(p).toInstant().isAfter(lastWeek);
}
catch(IOException e) {
throw new RuntimeException(e);
}
})
.forEach(System.out::println);
}

关于java - 获取 Java 目录中最近 7 天内修改的所有文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36062617/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com