只是临时写的代码,没有使用递归,对于多级的建议修改成递归方式。
本代码可以读取三层目录。
输出样例为:
String path = "C:/Users/admin/Desktop/近期/Python";
File dir = new File(path);
File[] files = dir.listFiles(); //百度文库
if (files == null) {
return;
}
for (int i = 0; i < files.length; i++) {
if (files[i].isDirectory()) { //第一层
File[] files1 = files[i].listFiles();
if (files1 == null) {
return;
}
System.out.println(files[i].getName());
for (int ii = 0; ii < files1.length; ii++) {
if (files1[ii].isDirectory()) { //第2层
File[] files2 = files1[ii].listFiles();
if (files2 == null) {
return;
}
System.out.println("\t"+files1[ii].getName());
for (int iii = 0; iii < files2.length; iii++) {
if (files2[iii].isDirectory()) { //第3层
File[] files3 = files2[iii].listFiles();
if (files3 == null) {
return;
}
System.out.println("未完待续");
} else {
if(!files2[iii].getName().contains(".FYTEMP"))
System.out.println("\t\t"+files2[iii].getName());
}
}
} else {
if(!files1[ii].getName().contains(".FYTEMP"))
System.out.println("\t"+files1[ii].getName());
}
}
} else {
if(!files[i].getName().contains(".FYTEMP"))
System.out.println(files[i].getName());
}
}