java学习笔记之打文件树状图(File类)
需求:打印指定目录的文件树状图,类似于:
代码:
import java.io.File;
public class TestFile {
public static void main(String[] args) {
File f=new File("D:\\电影");
PrintFileTree(f, 0);
}
static void PrintFileTree(File files,int level)//定义递归函数
{
for(int i=0;i<level;i++)//根据目录的级数打印树状图的前缀
{
System.out.print("-");
}
System.out.println(files.getName());//打印当前文件名称
if(files.isDirectory())//如果当前文件是个文件夹
{
File[] filess=files.listFiles();//获取文件夹中的所有文件列表
for(File temp : filess)
PrintFileTree(temp, level+1);//递归调用
}
}
}
结果: