扫描某文件夹 以树目录形式打印出名字

来源:互联网 发布:手机淘宝购物车不显示 编辑:程序博客网 时间:2024/06/05 15:14
package com.lifei.file;
import java.io.File;


public class FileListTest {
    public static void main(String[] args) {
        String path="e:\\upload";
        listAll(new File(path),0);
    }
     
    //level用于记录目录的级数。
    public static void listAll(File dir, int level) {
        String space=getSpace(level);
        System.out.println(space+dir.getAbsolutePath());
        File files[]=dir.listFiles();
        if(null==files){
            return;
        }
         
        for(File file:files){
            if(file.isDirectory()){
                listAll(file, ++level);
            }else{
                System.out.println(space+file.getAbsolutePath());
            }
        }
    }
 
    //根据目录级数产生空格。
    public static String getSpace(int level){
        StringBuilder sb=new StringBuilder(); 
        for(int i=0;i<level;i++){
            sb.append("  ");
        }
        return sb.toString();
    }

}



----------------------------------------------------------------------------------------------------------

public class FileTest {/*** @param args*/public static void main(String[] args) {File dir=new File("F:\\CC");listAll(dir,0);}public static void listAll(File dir,int count) {if(!dir.exists()){//健壮性判断throw  new  RuntimeException("目录不存在!!!");}System.out.println(getSpace(count)+dir.getAbsolutePath());count++; //用于记录目录的级数。File files[]=dir.listFiles();for(File file:files){if(file.isDirectory())listAll(file,count);elseSystem.out.println(getSpace(count)+file.getAbsolutePath());}}public static String getSpace(int count) {   //根据目录级数产生空格。StringBuilder sb=new StringBuilder(); for(int i=0;i<count;i++){sb.append("    ");}return sb.toString();}}


0 0
原创粉丝点击