java 获取文件列表,并按照文件名称排序


java 获取文件列表,并按照文件名称排序

https://www.cnblogs.com/zhouyalei/p/3343030.html

 

需求:获取全部的日志文件,并按照文件名称倒序排列,把最新的文件放在最前
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());
}
复制代码

 

分类: java

标签:  java文件File
好文要顶  关注我  收藏该文   
 
 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM