编程知识 购物 网址 新闻 笑话 | 软件 日历 阅读 图书馆 China
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
vbs/VBScript DOS/BAT hta htc python perl 游戏相关 VBA 远程脚本 ColdFusion ruby专题 autoit seraphzone PowerShell linux shell Lua Golang Erlang 其它教程 CSS/HTML/Xhtml html5 CSS XML/XSLT Dreamweaver教程 经验交流
站长资讯 .NET新手 ASP.NET C# WinForm Silverlight WCF CLR WPF XNA VisualStudio ASP.NET-MVC .NET控件开发 EntityFramework WinRT-Metro Java C++ PHP Delphi Python Ruby C语言 Erlang Go Swift Scala R语言 Verilog 其它语言 架构设计 面向对象 设计模式 领域驱动 Html-Css JavaScript jQuery HTML5 SharePoint GIS技术 SAP OracleERP DynamicsCRM K2 BPM 信息安全 企业信息 Android开发 iOS开发 WindowsPhone WindowsMobile 其他手机 敏捷开发 项目管理 软件工程 SQLServer Oracle MySQL NoSQL 其它数据库 Windows7 WindowsServer Linux
   -> Java -> java遍历给定目录,树形结构输出所有文件,包括子目录中的文件 -> 正文阅读

[Java]java遍历给定目录,树形结构输出所有文件,包括子目录中的文件

(转自:http://blog.csdn.net/gangwazi0525/article/details/7569701)

 1 import java.io.File;
 2 
 3 public class ReadDirectory {
 4         // 文件所在的层数
 5         private int fileLevel;
 6 
 7         /**
 8          * 生成输出格式
 9          * @param name 输出的文件名或目录名
10          * @param level 输出的文件名或者目录名所在的层次
11          * @return 输出的字符串
12          */
13         public String createPrintStr(String name, int level) {
14                 // 输出的前缀
15                 String printStr = "";
16                 // 按层次进行缩进
17                 for (int i = 0; i < level; i ++) {
18                         printStr  = printStr + "  ";
19                 }
20                 printStr = printStr + "- " + name;
21                 return printStr;
22         }
23 
24         /**
25          * 输出初始给定的目录
26          * @param dirPath 给定的目录
27          */
28         public void printDir(String dirPath){
29                 // 将给定的目录进行分割
30                 String[] dirNameList = dirPath.split("\\\\");
31                 // 设定文件level的base
32                 fileLevel = dirNameList.length;
33                 // 按格式输出
34                 for (int i = 0; i < dirNameList.length; i ++) {
35                         System.out.println(createPrintStr(dirNameList[i], i));
36                 }
37         }
38 
39         /**
40          * 输出给定目录下的文件,包括子目录中的文件
41          * @param dirPath 给定的目录
42          */
43         public void readFile(String dirPath) {
44                 // 建立当前目录中文件的File对象
45                 File file = new File(dirPath);
46                 // 取得代表目录中所有文件的File对象数组
47                 File[] list = file.listFiles();
48                 // 遍历file数组
49                 for (int i = 0; i < list.length; i++) {
50                         if (list.isDirectory()) {
51                                 System.out.println(createPrintStr(list.getName(), fileLevel));
52                                 fileLevel ++;
53                                 // 递归子目录
54                                 readFile(list.getPath());
55                                 fileLevel --;
56                         } else {
57                                 System.out.println(createPrintStr(list.getName(), fileLevel));
58                         }
59                 }
60         }
61         
62         public static void main(String[] args) {
63                 ReadDirectory rd = new ReadDirectory();
64                 String dirPath = "D:\\有道词典";
65                 rd.printDir(dirPath);
66                 rd.readFile(dirPath);
67         }
68 }

输出结果如下:


  Java 最新文章
初入山门,需记门规
java 操作本地数据库 mysql
spring boot 整合 mybatis
单表(SSM、SpringBoot、SpringCloud、Free
Mybatis框架中Mapper动态代理方式
IDEA报错:Error starting ApplicationCont
JDK源码之String、StringBuffer、StringBui
java 初始化与清理
Java 对象初始化
第四天知识点
上一篇文章      下一篇文章      查看所有文章
加:2015-07-31 14:52:11  更:2017-05-15 09:07:12 
 
360图书馆 软件开发资料 购物精选 新闻资讯 Chinese Culture 三丰软件 开发 中国文化 阅读网 日历 万年历 2019年10日历
2019-10-22 20:12:56
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  编程知识