递归地读取某个目录及子目录下的所有文件,
获取文件名
package org.example;
import java.io.*;
public class FileTest01 {
public static void main(String[] args) {
listFile(new File("E:\\demo"), 0);
}
//递归读取某个目录及子目录下的所有文件
private static void listFile(File f, int level) {
/**
* 仅提供打印时展示层次感
* */
String s = "";
for (int i = 0; i < level; i++) {
s += " ";
}
//listFiles: File类的方法,返回一个抽象路径名数组,表示此抽象路径名表示的目录中的文件。
File[] files = f.listFiles();
for (int i = 0; i < files.length; i++) {
/**返回此抽象路径名表示的文件或目录的名称。
* */
System.out.println(s + files[i].getName());
if (files[i].isDirectory()) {
listFile(files[i], level+1);
}
}
}
}