java - 根据 lastModification 时间快速排序文件
问题描述
我想根据上次修改时间对 java 中的文件进行排序。但它应该是闪电般的快。
File[] fileList = null;
try {
File rootFolder = new File(dir);
if (rootFolder.isDirectory()) {
fileList = rootFolder.listFiles();
}
Arrays.sort(fileList, new Comparator<File>() {
public int compare(File f1, File f2) {
return Long.compare(f1.lastModified(), f2.lastModified());
}
});
} catch(Exception e) {
System.out.println("Not a valid directory " + dir);
}
解决方案
您可以从排序文件程序中尝试此代码
import java.io.File;
import java.util.Arrays;
import java.util.Comparator;
public class ListFilesByDate {
public static void main(String[] args) {
File dir = new File("/tmp/code");
File[] files = dir.listFiles();
Arrays.sort(files, new Comparator<File>(){
public int compare(File f1, File f2) {
return Long.valueOf(f2.lastModified()).compareTo(f1.lastModified());
}
});
for(File file: files) {
System.out.println(file.getName());
}
}
}
推荐阅读
- google-apps-script - 根据其中一列中的文本过滤将压缩.txt文件中的行导入谷歌表格?
- reactjs - 为什么自定义钩子的回调永远看不到组件道具
- .net - 如何重置自定义控件
- r - 如何在R中将伽马分布分解为两个伽马分布
- mysql - 为什么 MySQL 不断将我的 VARCHAR 更改为 TEXT?
- javascript - 如何将资产导出到 React Native JS 文件?
- dask - Dask Distributed 产生 AttributeError:“HighLevelGraph”对象没有属性“__dask_distributed_pack__”
- javascript - 用于导入私钥的 JavaScript 椭圆曲线加密错误:私钥错误?
- python - Python,repl.it - 未使用 csv.writer 和 writer.writerow 将详细信息写入文件
- c++ - 使用 C++ 和 SDL 绘制线条