import java.io.File;
public class TTT {
public static void main(String[] args) {
File f = new File("F:\\abc");
printFile(f, 0);
}
static void printFile(File file, int level) {
// TODO Auto-generated method stub
for (int i = 0; i < level; i++) {
System.out.print(" ");
}
System.out.println(file.getName());
//如果是目录
if (file.isDirectory()) {
File[] files = file.listFiles();
//遍历目录下的全部文件
for (File temp : files) {
printFile(temp, level + 1);
}
}
}
}
关键在于打印目录结构
递归分析从任意一个中间的情况开始分析
拿到任意一个file
1.先根据file的层次level,打印对应空格
2.打印file名字
3.判断,如果file是目录,再遍历file下的子目录,对任意一个子目录,递归,level+1