递归某目录下全部文件

简介: 该方法用于递归遍历指定路径下的所有文件和子目录,将每个文件的绝对路径添加到集合中。支持层级嵌套遍历,适用于文件批量处理场景。

/**

 * 获取路径下的所有文件/文件夹

 * @param directoryPath 目标路径(父级,

 * 如遍历:

 * 文件夹1

 *  文件1

 *  文件夹2

 *       文件2

 * 则写文件夹1全路径即可

 )

 * @param list          返回路径的集合

 */

public static void readfile(String directoryPath, List<String> list) {

   File file = new File(directoryPath);

   if (!file.isDirectory()) {

       list.add(file.getAbsolutePath());

   } else if (file.isDirectory()) {

       String[] filelist = file.list();

       for (int i = 0; i < filelist.length; i++) {

           File readfile = new File(directoryPath + File.separator + filelist[i]);

           if (!readfile.isDirectory()) {

               list.add(readfile.getAbsolutePath());

           } else if (readfile.isDirectory()) {

               readfile(readfile.getAbsolutePath(), list);

           }

       }

   }

}

相关文章
|
3月前
|
Java 测试技术 数据库
Spring Boot中的项目属性配置
本文介绍Spring Boot中配置管理的常用方法:通过`@Value`读取单个配置,使用`@ConfigurationProperties`封装多个配置项,并实现开发与生产环境配置文件(如application-dev.yml和application-pro.yml)的灵活切换,提升项目可维护性。
|
3月前
|
JSON 缓存 Java
Spring Boot集成 Swagger2 展现在线接口文档
Swagger是一款用于生成和管理API文档的工具,解决前后端分离架构中接口文档更新不及时的问题。通过集成Swagger2,可自动生成在线接口文档,支持实时查看与测试接口,提升开发效率。本文介绍其在Spring Boot中的配置与常用注解使用方法。
|
3月前
|
缓存 JSON 前端开发
Spring Boot集成Thymeleaf模板引擎
Thymeleaf 是现代Java模板引擎,支持静态原型与动态数据融合,可直接浏览器预览,提升前后端协作效率,适用于Spring Boot项目,实现页面自然展示与高效开发。
Spring Boot集成Thymeleaf模板引擎
|
3月前
|
SQL 关系型数据库 数据库
分布式事务
本文介绍了分布式事务的概念、典型场景及解决方案。在微服务架构下,一次业务操作需跨多个数据库和远程调用协作完成,传统本地事务无法保证整体一致性。通过Seata框架可实现分布式事务控制,其AT模式无侵入、高性能,基于两阶段提交与undo log实现最终一致;XA模式则提供强一致性但性能较低。文章还结合下单、支付等场景演示了Seata的集成与应用。
|
3月前
|
存储 Java API
Spring Boot使用slf4j进行日志记录
本文介绍了在Spring Boot项目中使用SLF4J结合Logback进行日志管理的方法。通过配置`application.yml`和`logback.xml`,实现日志级别、输出格式、文件存储与滚动策略的灵活控制,并推荐使用SLF4J门面模式替代直接调用具体日志实现,提升系统可维护性与扩展性。
|
3月前
|
JSON fastjson Java
Spring Boot 默认对Json的处理
本文详解Spring Boot中JSON处理,涵盖Jackson与FastJson的使用对比、null值处理及统一返回结构封装,提升接口数据规范性与可读性。
|
3月前
|
监控 Java Sentinel
熔断降级
熔断降级是防止服务雪崩的核心机制,通过Sentinel实现。熔断由客户端断路器统计异常或慢请求比例,超阈值后拦截请求;降级则返回默认数据保障体验。结合使用可快速失败、避免级联故障。
|
3月前
|
人工智能 监控 Java
请求限流
本文介绍如何使用Sentinel实现接口限流与降级,通过配置QPS阈值保护商品查询接口,并结合JMeter进行压测验证。同时讲解了线程隔离机制,包括信号量隔离的应用,确保系统在高并发下的稳定性。
请求限流
|
3月前
|
JSON Java Maven
SpringBoot使用汇总
Spring Boot 是基于 Spring 的轻量级框架,旨在简化配置、快速启动项目。它通过自动配置和约定优于配置的理念,整合第三方库,实现开箱即用,极大提升了开发效率,是当前 Java 微服务开发的主流选择。
|
3月前
|
存储 Java 关系型数据库
微服务概述
本文对比单体与微服务架构,阐述微服务通过服务拆分、独立部署、技术自治等特性,提升系统可维护性和扩展性,同时分析其优缺点及实现方案,助力构建高效分布式系统。

热门文章

最新文章