首页 > 编程语言 >java 使用递归遍历文件夹及子文件夹中文件

java 使用递归遍历文件夹及子文件夹中文件

时间:2022-09-07 19:56:55浏览次数:79  
标签:文件 java file 递归 及子 文件夹 File

 //使用递归遍历文件夹及子文件夹中文件
    public  void filesDirs(File file){
        //File对象是文件或文件夹的路径,第一层判断路径是否为空
        if(file!=null){
            //第二层路径不为空,判断是文件夹还是文件
            if(file.isDirectory()){
                //进入这里说明为文件夹,此时需要获得当前文件夹下所有文件,包括目录
                File[] files=file.listFiles();//注意:这里只能用listFiles(),不能使用list()
                //files下的所有内容,可能是文件夹,也可能是文件,那么需要一个个去判断是文件还是文件夹,这个判断过程就是这里封装的方法
                //因此可以调用自己来判断,实现递归
                for (File flies2:files) {
                    filesDirs(flies2);
                }
            }else{
                fileNames.add( file.getAbsolutePath());
            }
        }else{
            System.out.println("文件不存在");
        }

    }

标签:文件,java,file,递归,及子,文件夹,File
From: https://www.cnblogs.com/lovexiao/p/16667069.html

相关文章

  • JavaWeb学习笔记第三弹
    一、数据库设计1、软件研发步骤2、数据库设计概念建立数据库中的表结构以及表与表之间的关联关系的过程3、数据库设计的步骤表关系:一对一、一对多(多对一)、多对多......
  • java中公平锁非公平锁的区别
    公平锁:多线程按照申请锁的顺序来获取锁,不会出现争抢的情况。非公平锁:多线程不会按照顺序获取锁,会先尝试去争抢锁,有可能后申请的线程比先申请的线程先抢到锁,在高并发情况下......
  • javascript第一天
    JavaScript基础-第1天了解变量、数据类型、运算符等基础概念,能够实现数据类型的转换,结合四则运算体会如何编程。体会现实世界中的事物与计算机的关系理解什么是数......
  • CentOS安装VMwareTools 安装完成 把文件拖入CentOS文件夹即可
    CentOS安装VMwareTools一、安装VMwareTools1、打开CentOS,前提是以root身份进入,先将界面中的光驱弹出2、点击“虚拟机”,然后再点击重新安装VMwareTools或者安装VMwa......
  • 【over】重学Java se
    踩个坑,因为刚学完ssm框架,着急了解原理,我尝试着去了解spring的源码,后来才发现,没有开发经验,还是别谈了解源码了,好几十万行的代码,在我现在这个阶段来说,不光说看不懂,看的东西也......
  • Logstash深入收集Java日志
    Logstash深入收集Java日志没有修改Json格式在企业中,我们看到tomcat日志遇到异常(exception)一条日志可能是几行或者十几行甚至几十行,组成的,那么,我们需要将多行日志变成......
  • java获取当前日期和前一周、前一月、前一年的日期
    java获取当前日期和前一周、前一月、前一年的日期publicstaticvoidmain(String[]args){SimpleDateFormatformat=newSimpleDateFormat("yyyy-MM-dd......
  • java读取和设置配置文件中的属性参数
    想必大家和我一样经常在项目中读取一些配置文件,因为读取的配置很少,结构简单又不想搞个读取xml,比较麻烦。所以这时大多采取读取.properties配置文件,我们和大名鼎鼎的log4j......
  • java - 实体类里浅拷贝 与 深拷贝
    1.背景  因为存在集合类,因此引出了浅拷贝与深拷贝,浅拷贝无法将List<TreeData> 这样的指定栈堆的类型字段new一个新的地址,需要使用深拷贝才能解决2.浅拷贝......
  • Description Resource Path Location Type Java compiler level does not match t
    问题:DescriptionResourcePathLocationTypeJavacompilerleveldoesnotmatcht今天在自己项目中整合HBaseAPI的时候遇到了这个问题,想了半天也不知道自己干了什么......