需求:获取全部的日志文件,并按照文件名称倒序排列,把最新的文件放在最前
1.获取全部的日志文件:(方法:public List<String> ergodic(File file,List<String> resultFileName))
File[] files = file.listFiles();
if(files==null)return resultFileName;
List<File> fileList = new ArrayList<File>();
for (File f : files) {
fileList.add(f);
}
2.对fileList集合进行排序:
Collections.sort(fileList, new Comparator<File>() {
@Override
public int compare(File o1, File o2) {
if (o1.isDirectory() && o2.isFile())
return -1;
if (o1.isFile() && o2.isDirectory())
return 1;
return o2.getName().compareTo(o1.getName());
}
});
3.递归获取文件子目录
for (File f : fileList) {
if(f.isDirectory()){
resultFileName.add(f.getPath());
ergodic(f,resultFileName);
}else
resultFileName.add(f.getPath());
}
友情赞助
如果您喜欢此文,感觉对您工作有帮助,预期领导会给您涨工资,不妨小额赞助一下,让我有动力继续努力。
赞助方式:打开支付宝App,使用“扫一扫”付款,付款码见下图,别忘了付款留言哦!