java 获取文件列表,并按照文件名称排序
需求:获取全部的日志文件,并按照文件名称倒序排列,把最新的文件放在最前
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,使用“扫一扫”付款,付款码见下图,别忘了付款留言哦!