zl程序教程

您现在的位置是:首页 >  后端

当前栏目

通过java遍历文件夹的文件并通过条件筛选

JAVA文件遍历 通过 文件夹 条件 筛选
2023-09-27 14:22:49 时间

1.获取文件夹的路径payh

2.创建一个存储file的集合

3.

private void extractedFile(List fileList, String path) {

    File file = new File(path);
    // 判断参数path,路径是否存在
    if (!file.exists()) {
        throw new BusinessException(String.format("路径[%s]不存在。", path));
    }

    // 判断参数path,是否是文件(只在第一次调用该方法时有用,第二次递归进入该方法,肯定不是文件,而是文件夹)
    if (file.isFile()) {
        fileList.add(file.getAbsolutePath());
        throw new BusinessException("不是文件");
    }

    // 判断参数apth, 是否是空文件夹
    File[] files = file.listFiles();
    if (files == null) {
        throw new BusinessException(String.format("路径[%s]是一个空文件夹。", path));
    }

    // 遍历
    for (File file1 : files) {
        if (!file1.isDirectory()) {
            fileList.add(file1);
            System.out.println(String.format("文件:%s", file1.getAbsolutePath()));
        }
    }
}将获取到的file文件放入集合中

4.将集合通过条件筛选

List returnList =  fileList.stream().filter(file -> file.getName().contains(pageMap.get("name"))).sorted(Comparator.comparing(File::getName)).map(file -> {return file.getAbsolutePath();}).collect(Collectors.toList());

筛选出符合条件的文件名,通过名称排序,然后获取文件名称的集合

(可以应用日志)