Java访问文件夹中文件的递归遍历代码Demo

上代码:

 1 import java.io.File;
 2 
 3 /*
 4  * 需求:对指定目录进行所有内容的列出(包含子目录中的内容)
 5  * 也可以理解为 深度遍历。
 6  */
 7 public class FindAllFilesInFolder {
 8     public static void main(String[] args) {
 9         File dir = new File("E:\\zhanhui");
10         listAll(dir,0);
11     }
12     public static void listAll(File dir,int level) {
13         System.out.println(getSpace(level)+dir.getName());
14         //获取指定目录下当前的所有文件夹或者文件对象
15         level++;
16         File[] files = dir.listFiles();
17         for(int x=0; x<files.length; x++){
18             
19             if(files[x].isDirectory()){
20                 listAll(files[x],level);
21             }
22             else
23                 System.out.println(getSpace(level)+files[x].getName());
24         }    
25     }
26     private static String getSpace(int level) {
27         StringBuilder sb = new StringBuilder();
28         sb.append("|--");
29         for(int x=0; x<level; x++){
30             sb.insert(0,"|  ");
31         }
32         return sb.toString();
33     }
34 }

 

posted @ 2017-09-12 10:24  SummerChill  阅读(320)  评论(0编辑  收藏  举报