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

Posted 多情剑客无情剑;

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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()); } } }

 


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();
    }
}

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

 

以上是关于java-IO流(File对象-深度遍历指定目录下的文件夹和文件)的主要内容,如果未能解决你的问题,请参考以下文章

Java-IO流实验

javaIO流

IO流-获取指定目录下文件夹和文件对象File类

Java-IO流总结

java-IO学习

Java-IO处理流