public class IoTest2 {
public static void main(String[] args) {
File path = new File("D:\\Test");
// 0 代表输出 tab的次数 path 是目录
getPath(path , 0);
}
private static void getPath(File path, int j) {
printPath(path , j);
j++;
File[] files = path.listFiles();
if(files.length == 0 && files == null){
return;
}
for (File file : files) {
//判断是文件夹
if (file.isDirectory()){
//开始递归
getPath(file , j);
// 判断是文件
}else if (file.isFile()){
printPath(file , j);
}
}
}
private static void printPath(File path, int j) {
for (int i = 0 ; i < j ; i++){
System.out.print("\t");
}
System.out.println("|-" + path.getName());
}
}
理解为什么是文件夹就要进行递归呢 , 要用这个递归获取到 文件夹内部内容
listFiles() 读取顺序 是按系统的顺序来的
比如 a 优先级 大于 汉字