以树状结构显示文件夹
题目要求:编写程序,在命令行中以树状结构显示特定的文件夹及其子文件夹,如果子文件是文件则需要显示文件大小, 最后统计整个目录的大小
public class Test {
static long fileNum=0;
static long fileLen=0;
public static void main(String[] args) {
String ss="C:\\windows";
File ff=new File(ss);
if(ff != null && ff.exists()){
System.out.println(ff.getParent().getAbsolutePath());
showFile(ff,0);
}
System.out.println(ff.getAbsolutePath()+"的文件数目为:"+fileNum+",总大小 为:"+fileLen);
}
public static void showFile(File ff,int level) {
if(ff != null) {
for(int i = 0;i<level;i++)
System.out.print(" ");
System.out.print("|-");
if(ff.isFile()) {
fileNum++;
fileLen+=ff.length();
System.out.println(ff.getName()+":"+ff.length());
}else if(ff.isDirectory()) {
System.out.println(ff.getName());
File[] fs=ff.listFiles();
for(File temp:fs)
showFile(temp, level+1);
}
}
}
}