递归读取目录文件下的所有文件

---恢复内容开始---

1.读取e盘下的文件夹app下的所有文件(不是文件夹)需要读取的是(xx.txt;yytxt,gg.txt)目录如图

  e:app

     app1  

        app1.1   xx.txt

        app1.2  yy.txt

     app2

        app2   gg.txt

2.代码

 

package com.tansun;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

public class FileReader {
    public List<String> ergdoic(File file,List<String> resultFileName){
        File[] files = file.listFiles();
        if(files==null){
            return resultFileName;
        }
        for(File f:files){
            if(!f.isDirectory()){//如果不是文件夹
                resultFileName.add(f.getPath());
            }else{
                ergdoic(f,resultFileName);//如果是文件夹进行递归
            }
        }
        return resultFileName;//返回文件名的集合
    }
    
    //运行测试
    public static void main(String[] args) {
        File file = new File("e:\app");
        List<String> list= new ArrayList<String>();         
         System.out.println(new FileReader().ergdoic(file, list));
    }
    
    
}

3.结果就是文件的路径的集合

  

原文地址:https://www.cnblogs.com/zhangtongzct/p/5520423.html