java如何获取指定文件夹下的所有文件名

 更新时间:2024年01月22日 09:18:48   作者:lzy_xxy  
这篇文章主要介绍了java如何获取指定文件夹下的所有文件名问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

java获取指定文件夹下的所有文件名

使用递归方法,获取指定文件夹下的所有文件名

输出所有文件名,前置空格表示文件夹层次结构

如下图

所示:

代码

import java.io.File;    

/**  
 * 
 * 该类可以输出指定路径下所有的文件名(文件名和文件夹名)
 * 指定一个路径即可
 *  
 */  
public class TakeFilePathAndName {    

    public static void main(String[] args) {   
        //这是需要获取的文件夹路径  
        String path = "/Users/XXY/Desktop/test";   
        getFile(path,0);   
    }   

    /*
     * 函数名:getFile
     * 作用:使用递归,输出指定文件夹内的所有文件
     * 参数:path:文件夹路径   deep:表示文件的层次深度,控制前置空格的个数
     * 前置空格缩进,显示文件层次结构
     */
    private static void getFile(String path,int deep){   
        // 获得指定文件对象  
        File file = new File(path);   
        // 获得该文件夹内的所有文件   
        File[] array = file.listFiles();   

        for(int i=0;i<array.length;i++)
        {   
            if(array[i].isFile())//如果是文件
            {   
                    for (int j = 0; j < deep; j++)//输出前置空格
                    System.out.print(" ");
                // 只输出文件名字  
                System.out.println( array[i].getName());   
                // 输出当前文件的完整路径   
               // System.out.println("#####" + array[i]);   
                // 同样输出当前文件的完整路径   大家可以去掉注释 测试一下   
               // System.out.println(array[i].getPath());   
            }
            else if(array[i].isDirectory())//如果是文件夹
            {  
                    for (int j = 0; j < deep; j++)//输出前置空格
                    System.out.print(" ");

                    System.out.println( array[i].getName());
                    //System.out.println(array[i].getPath());
                    //文件夹需要调用递归 ,深度+1
                getFile(array[i].getPath(),deep+1);  
            }   
        }   
    }   
} 

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Solon MVC 的 @Mapping 用法示例说明

    Solon MVC 的 @Mapping 用法示例说明

    SolonMvc框架中的@Mapping注解用于请求路径映射,支持加在public方法或类上,它可以自定义路径、请求方法、内容类型等,支持多种路径映射表达式和参数注入方式,本文给大家介绍Solon MVC的@Mapping 用法示例说明,感兴趣的朋友一起看看吧
    2024-11-11
  • 使用spring boot开发时java对象和Json对象转换的问题

    使用spring boot开发时java对象和Json对象转换的问题

    这篇文章主要介绍了使用spring boot开发时java对象和Json对象转换的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • 1小时快速上手RabbitMQ(简介及安装过程)

    1小时快速上手RabbitMQ(简介及安装过程)

    RabbitMQ简称MQ全称是Message Queue(消息队列),是在消息的传输过程中保存消息的容器,多用于分布式系统之间进行通信,本文给大家讲解了RabbitMQ简介与安装,结合实例代码给大家介绍的非常详细,需要的朋友跟随小编一起看看吧
    2023-01-01
  • MyBatis ofType和javaType的区别说明

    MyBatis ofType和javaType的区别说明

    这篇文章主要介绍了MyBatis ofType和javaType的区别,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • java编写全年考勤日历

    java编写全年考勤日历

    这篇文章主要为大家详细介绍了java编写全年考勤日历,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • 创建springBoot模块没有目录结构的解决方案

    创建springBoot模块没有目录结构的解决方案

    2023版IntelliJ IDEA创建模块时可能出现目录结构识别错误,导致文件显示异常,解决方法为选择模块后点击确认,重新校准项目结构设置,确保源代码和资源目录正确配置
    2025-08-08
  • 通过Java与Hadoop和Spark结合进行大数据处理

    通过Java与Hadoop和Spark结合进行大数据处理

    随着大数据技术的迅猛发展,数据处理框架已经不再局限于单一机器或传统数据库的处理方式,而是转向分布式计算,Hadoop和Spark作为最广泛使用的大数据处理框架,为我们提供了高效处理海量数据的能力,本文将深入探讨如何使用Java与Hadoop和Spark结合进行大数据处理
    2025-09-09
  • JAVA中Object的常用方法

    JAVA中Object的常用方法

    JAVA中Object是所有对象的顶级父类,存在于java.lang包中,这个包不需要我们手动导包,本文通过实例代码介绍JAVA中Object的常用方法,感兴趣的朋友一起看看吧
    2023-11-11
  • SpringBoot整合Apache Flink的详细指南

    SpringBoot整合Apache Flink的详细指南

    这篇文章主要为大家详细介绍了Spring Boot 整合 Apache Flink 的详细过程,涵盖环境准备,依赖配置,代码实现及运行步骤,感兴趣的小伙伴可以了解下
    2025-06-06
  • java调用淘宝api联网查询ip归属地

    java调用淘宝api联网查询ip归属地

    java联网查询IP归属地,原理是根据淘宝提供的service查询IP的归属地并且解析http请求返回的json串
    2014-03-03

最新评论