import java.io.File;
public class TestFile {
int fileCount = 0;//记录根文件层级数
public void show(File file){//显示层级目录
int count = 0;//当前文件或者文件夹层数级
if(fileCount==0){//第一次遍历文件
//根文件层级数
fileCount = file.getAbsolutePath().split("\\\\").length;
}
if(file.exists()){
count = file.getAbsolutePath().split("\\\\").length;
for(int i = 0;i<count-fileCount;i++){
System.out.println("--");
}
if(file.isDirectory()){//目录的层级数
File[] f = file.listFiles();
System.out.println("目录名:"+file.getName());
if(f!=null){
for(int i=0;i<file.length();i++){
show(f[i]);//递归
}
}else{
//文件的层级数
System.out.println("文件名:"+file.getName());
}
}
}else{
System.out.println("该文件不存在!");
}
}
public static void main(String[] args) {
File file = new File("D:\\software");
new TestFile().show(file);
}
}