private static void demo02() {
// 查看当前系统下的根目录 listRoots();获取当前系统根目录的集合;
File[] fileArr = File.listRoots();
// 使用for循环输出每一个路径
for (int i = 0; i < fileArr.length; i++) {
File f1 = fileArr[i];
System.out.println(f1.getPath());
}
// 查看具体盘符先的文件目录 以f盘为例
File file = new File(“f://test/”);
// 获取f盘下的所有目录 listFiles()获取当前文件下的所有目录
File[] filesArr = file.listFiles();
for (int i = 0; i < filesArr.length; i++) {
File f2 = filesArr[i];
System.out.println(“文件路径: ” + f2.getPath());
System.out.println(“———————–”);
// 判断f2 是文件还是文件夹
// isDirectory 是文件夹,继续列出文件夹中的目录,返回值是boolean;
if (f2.isDirectory()) {
showFileList(f2.getAbsolutePath());
}
if (f2.isFile()) {
System.out.println(file.getName() + ” 下的文件 ” + f2.getName());
}
System.out.println(“===============”);
}
}
private static void showFileList(String filePath) {
File file = new File(filePath);
File[] filesArr = file.listFiles();
for (int i = 0; i < filesArr.length; i++) {
File f2 = filesArr[i];
System.out.println(“文件路径: ” + f2.getPath());
System.out.println(“———————–”);
// 判断f2 是文件还是文件夹
// isDirectory 是文件夹,继续列出文件夹中的目录,返回值是boolean;
if (f2.isDirectory()) {
File[] f2Arr = f2.listFiles();
for (int j = 0; j < f2Arr.length; j++) {
File f3 = f2Arr[j];
if (f3.isDirectory()) {
System.out.println(f2.getName() + ” 下的目录 ” + f3.getName());
showFileList(f3.getAbsolutePath());
}
if (f3.isFile()) {
System.out.println(f2.getName() + ” 下的文件 ” + f3.getName());
}
}
}
if (f2.isFile()) {
System.out.println(file.getName() + ” 下的文件 ” + f2.getName());
}
}
}