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 }
复制代码

 


本文转自SummerChill博客园博客,原文链接:http://www.cnblogs.com/DreamDrive/p/7508762.html,如需转载请自行联系原作者

相关文章
|
9月前
|
Java 开发工具
【Azure Storage Account】Java Code访问Storage Account File Share的上传和下载代码示例
本文介绍如何使用Java通过azure-storage-file-share SDK实现Azure文件共享的上传下载。包含依赖引入、客户端创建及完整示例代码,助你快速集成Azure File Share功能。
617 6
|
9月前
|
Java 数据处理 API
为什么你的Java代码应该多用Stream?从循环到声明式的思维转变
为什么你的Java代码应该多用Stream?从循环到声明式的思维转变
401 115
|
9月前
|
安全 Java 编译器
为什么你的Java代码需要泛型?类型安全的艺术
为什么你的Java代码需要泛型?类型安全的艺术
297 98
|
9月前
|
Java 编译器 API
java最新版和java8的区别,用代码展示
java最新版和java8的区别,用代码展示
703 43
|
9月前
|
安全 Java 容器
告别空指针噩梦:Optional让Java代码更优雅
告别空指针噩梦:Optional让Java代码更优雅
545 94
|
缓存 Java 测试技术
探讨Java中遍历Map集合的最快方式
探讨Java中遍历Map集合的最快方式
554 1
|
存储 缓存 Java
Java遍历Map集合的方法
在Java中,遍历Map集合主要有四种方式:1) 使用`keySet()`遍历keys并用`get()`获取values;2) 使用`entrySet()`直接遍历键值对,效率较高;3) 通过`Iterator`遍历,适合在遍历中删除元素;4) Java 8及以上版本可用`forEach`和Lambda表达式,简洁易读。`entrySet()`通常性能最佳,而遍历方式的选择应考虑代码可读性和数据量。
662 0
Java 遍历Map集合的各种姿势
最常用,在键值都需要时使用。 Map map = new HashMap(); for (Map.Entry entry : map.entrySet()) { System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue()); } 在for-each循环中遍历keys或values。
815 0
Java使用增强for循环和迭代器遍历Map集合
1、通过key集合访问,对Key敢兴趣,可以访问与key对应的Value值;  for(String k:maps.keySet()){             System.
1281 0
|
9月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
431 1