题目:
从键盘接收一个文件夹路径,把文件夹中的所有文件以及文件夹的名字按层级打印, 例如:
aaa是文件夹,里面有bbb.txt,ccc.txt,ddd.txt这些文件,有eee这样的文件夹,eee中有fff.txt和ggg.txt,打印出层级来
aaa
bbb.txt
ccc.txt
ddd.txt
eee
fff.txt
ggg.txt
参考文章: 从键盘接收一个文件夹路径,把文件夹中的所有文件以及文件夹的名字按层级打印,
http://bbs.itheima.com/thread-320605-1-1.html
import java.io.File;
import java.util.Scanner;
public class DirectoryDemo {
public static void main(String[] args) {
System.out.println("请输入路径");
Scanner sc = new Scanner(System.in);
String path=sc.nextLine();
File dir=new File(path);
System.out.println(dir.getName());
ergodic(dir, 0);
}
private static void ergodic(File dir, int level) {
String prePAUSE = " ";
for (int i = 0; i < level; i++) {
prePAUSE += " ";
}
File[] files = dir.listFiles();
for (int i = 0; i < files.length; i++) {
System.out.println(prePAUSE + files[i].getName());
if (files[i].isDirectory()) {
ergodic(files[i], level + 1);
}
}
}
}