java-IO流(File对象-深度遍历指定目录下的文件夹和文件)

时间:2021-12-30 13:09:16

 

java-IO流(File对象-深度遍历指定目录下的文件夹和文件)

 


 

java-IO流(File对象-深度遍历指定目录下的文件夹和文件)


 

java-IO流(File对象-深度遍历指定目录下的文件夹和文件)java-IO流(File对象-深度遍历指定目录下的文件夹和文件)

 

 


 

 

java-IO流(File对象-深度遍历指定目录下的文件夹和文件)

需求:遍历这个树状结构


java-IO流(File对象-深度遍历指定目录下的文件夹和文件)


   File(String pathname)  '\\'为了转义'\'
// 通过抽象路径pathname 创建一个新的文件或者目录
    File parent = new File("E:\\Test\\aa");
//      exists 判断文件或目录是否存在;存在为true
    if(!parent.exists()){
//          mkdirs 创建多级目录
        parent.mkdirs();
    }
import java.io.File;
public class Test {
    public static void main(String args[]){
        File file = new File("D:\\#test"); //电脑里已经存在了这个文件夹,不用新建了,File类不是输入输出流了
        listAll(file);
        //遍历这个文件夹(目录下所有的文件和文件夹名)
    }
    private static void listAll(File file) {
        //获取指定目录下,所有的文件对象和文件名
        File[] f = file.listFiles();
        for(File ff : f){
            System.out.println(ff.getAbsolutePath());
       //System.out.println(ff.getName()); } } }
java-IO流(File对象-深度遍历指定目录下的文件夹和文件)java-IO流(File对象-深度遍历指定目录下的文件夹和文件)

 


import java.io.File;

public class Test {
    public static void main(String args[]){
        File file = new File("D:\\#test"); //电脑里已经存在了这个文件夹,不用新建了
        listAll(file,0);
        //遍历这个文件夹(目录下所有的文件和文件夹名)
    }
    private static void listAll(File file,int level) {
        System.out.println(getSapce(level)+file.getName());
        //获取指定目录下,所有的文件对象和文件名
        File[] f = file.listFiles();
        level++;
        for(File ff : f){
            if(ff.isDirectory()){
                listAll(ff,level);
            }else
            System.out.println(getSapce(level)+ff.getName());
            
        }    
    }
    
    public static String getSapce(int level){
        StringBuilder sb = new StringBuilder();
        for(int x=0;x<level;x++){
            sb.append("|----");
        }
        return sb.toString();
    }
}

java-IO流(File对象-深度遍历指定目录下的文件夹和文件)

IO流(File对象-练习-深度遍历文件夹)