递归遍历目录结构和树状展现
本节结合前面给大家讲的递归算法,展示目录结构。大家可以先建立一个目录,下面增加几个子文件夹或者文件,用于测试。
【示例】使用递归算法,以树状结构展示目录树
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
import java.io.File; public class TestFile6 { public static void main(String[] args) { File f = new File( "d:/电影" ); printFile(f, 0 ); } /** * 打印文件信息 * @param file 文件名称 * @param level 层次数(实际就是:第几次递归调用) */ static void printFile(File file, int level) { //输出层次数 for ( int i = 0 ; i < level; i++) { System.out.print( "-" ); } //输出文件名 System.out.println(file.getName()); //如果file是目录,则获取子文件列表,并对每个子文件进行相同的操作 if (file.isDirectory()) { File[] files = file.listFiles(); for (File temp : files) { //递归调用该方法:注意等+1 printFile(temp, level + 1 ); } } } } |
执行结果如图所示: