查找目录下固定文件目录以及路径(自然排序)
Posted chengxuyuan-liu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了查找目录下固定文件目录以及路径(自然排序)相关的知识,希望对你有一定的参考价值。
import org.junit.Test; import java.io.File; import java.util.ArrayList; import java.util.Comparator; import java.util.List; /** * @ClassName T * @Description * @Author 刘志红 * @Date 28/05/2019 **/ public class T { private List<String> list = new ArrayList<>(300); //获取文件夹以及其子文件夹下所有文件的全路径 @Test public void absolutePath() { String path = "D:\\liuzhihong\\study\\批处理"; String regex = ".+\\.swf"; File file = new File(path); getFile(file); //按照文件名自然排序得到的全路径 list.stream().filter(x -> x.matches(regex)).sorted(Comparator.comparing(x -> x.substring(x.lastIndexOf("\\") + 1, x.lastIndexOf(".")))).forEach(System.out::println); System.out.println("-------------------------------"); System.out.println("-------------------------------"); System.out.println("-------------------------------"); //按照文件名自然排序得到的文件名 list.stream().filter(x -> x.matches(regex)).map(x -> x.substring(x.lastIndexOf("\\") + 1, x.lastIndexOf("."))).sorted().forEach(System.out::println); list.clear(); } public void getFile(File file) { if (file != null) { File[] f = file.listFiles(); /*获取子目录下的文件*/ if (f != null) { for (int i = 0; i < f.length; i++) { getFile(f[i]); } } else { String absolutePath = file.getAbsolutePath(); list.add(absolutePath); } } } }
以上是关于查找目录下固定文件目录以及路径(自然排序)的主要内容,如果未能解决你的问题,请参考以下文章
在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出相对路径