如果你查看下面的图片,我有一个包含3个文件夹的google bucket,每个文件夹都包含相同的文件
Test_1.csv
和
Test_2.csv
。这两个文件将作为我的数据流管道中的输入。
情况是
:有许多用户会首先将
测试1。csv
和
测试2。csv
在任何他们想要的文件夹中的文件(旧文件将被替换),然后执行程序。问题是user1何时将最新的
测试1。csv
和
测试2。csv
在任何文件夹中,程序应检查所有文件夹,并仅获取最后修改的文件。同样,当user2放入最新的文件并执行程序时,程序应该检查所有文件夹,只提取最后修改的文件。
我可以使用以下代码检查文件夹中最后修改的文件:
private File getLatestFilefromDir(String dirPath){
File dir = new File(dirPath);
File[] files = dir.listFiles();
if (files == null || files.length == 0) {
return null;
}
File lastModifiedFile = files[0];
for (int i = 1; i < files.length; i++) {
if (lastModifiedFile.lastModified() < files[i].lastModified()) {
lastModifiedFile = files[i];
}
}
return lastModifiedFile; }
如何在所有文件夹中循环搜索最新修改的文件?