通过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());
筛选出符合条件的文件名,通过名称排序,然后获取文件名称的集合
(可以应用日志)
相关文章
- Java Unit 测试中如何获得 resources 中的文件
- java实现读取yaml文件,并获取值
- JDK5.0允许java像C语言那样直接用printf()方法来格式化输出
- java Field.canAccess 和 Field.isAccessible
- Java: 复制文件最快方法
- java项目打包生成MD5文件
- SpringBoot 上传文件突然报错 Failed to parse multipart servlet request; nested exception is java.io.IOException: The temporary upload location [/tmp/tomcat.1428942566812653608
- Dubbo consumer消费端启动报错java.lang.RuntimeException: [source error] not available in a static method: h
- 在java中,如何跳出当前的多重循环?
- Java retry 重试
- 《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一2.5 操作文件
- Java 获取当前系统的操作系统类型
- Java如何获取文件编码格式
- Linux+Redis实战教程_day02_3、redis数据类型_4、String命令_5、hash命令_6、java操作redis数据库技术
- Java精选笔记_IO流【File(文件)类、遍历目录下的文件、删除文件及目录】
- Java序列化与反序列化学习(二):序列化接口说明
- Java程序启动同时复制resources下文件到jar包同级目录
- 【已解决】Android Studio 加载自定义properties文件出错java.lang.ExceptionInInitializerError Caused by: java.lang.Nu
- Java使用Jetty实现嵌入式Web服务器及Servlet容器
- Java中正则表达式(regex)匹配多行(Pattern.MULTILINE和Pattern.DOTALL模式)
- 1066 图像过滤(JAVA)
- 深入Java虚拟机之 -- 类文件结构(字节码)
- java 如何递归遍历一个文件夹下的所有文件
- 我的Java开发学习之旅------>Java多线程下载文件 实例