用递归法显示子目录,下面给出代码即结果:
import java.io.File;
/**
* 利用递归来显示文件夹 包括子目录等
* @author Administrator
*
*/
public class TestFD {
public static void main(String[] args) {
File src = new File("D:/Eclipse/MyPro22");
printName(src,0);
}
public static void printName(File src,int deep) {
//为了有层次感,我们用“—”来表示层次
for(int i=0;i<deep;i++) {
System.out.print("-");
}
//打印该文件的名称
System.out.println(src.getName());
if(!src.exists()||src == null) {//递归头
return;
}else if(src.isDirectory()){//递归体
//for循环遍历src里面的文件
for(File s:src.listFiles()) {
printName(s,deep+1);
}
}
}
}
MyPro22
-.classpath
-.project
-.settings
--org.eclipse.jdt.core.prefs
-bin
--ADT.class
--Dog.class
--Employee.class
--FileDemo01.class
--MyArrayList.class
--MyHashMap.class
--MyHashSet.class
--MyHashSet00.class
--MyTestIterator.class
--Node.class
--Node2.class
--Node3.class
--SxtHashMap01.class
--SxtHashMap02.class
--SxtHashMap03.class
--SxtHashMap04.class
--Test01.class
--TestCollection.class
--TestDir04.class
--TestFD.class
--TestFile03.class
--TestFile05.class
--TestFile06.class
--TestHashSet.class
--TestIO.class
--TestIterator.class
--TestStorData2.class
--TestStoreData.class
--TestStoreData0.class
--TestTreeMap.class
--TestTreeSet.class
--TS.class
--User.class
-src
--ADT.java
--FileDemo01.java
--MyArrayList.java
--MyHashMap.java
--MyHashSet.java
--MyHashSet00.java
--MyTestIterator.java
--Node.java
--Node2.java
--Node3.java
--SxtHashMap01.java
--SxtHashMap02.java
--SxtHashMap03.java
--SxtHashMap04.java
--Test01.java
--TestCollection.java
--TestDir04.java
--TestFD.java
--TestFile03.java
--TestFile05.java
--TestFile06.java
--TestHashSet.java
--TestIO.java
--TestIterator.java
--TestStorData2.java
--TestStoreData.java
--TestStoreData0.java
--TestTreeMap.java
--TestTreeSet.java
--TS.java
-timg.jpg