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,使用“掃一掃”付款,付款碼見下圖,別忘了付款留言哦!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM