package com.xsyu.dcf23;
import java.io.File;
public class Test {
public static void main(String[] args) {
File dir = getDir();
System.out.println(getFilelength(dir));
}
/*从键盘接收一个文件夹路径,统计文件夹的大小*/
public static File getDir() {
Scanner sc =new Scanner(System.in);//创建键盘录入对象
System.out.println("请输入一个文件夹路径");
while (true) {
String line = sc.nextline();
File dir = new File(line);
if (!dir.exists()) {
System.out.println("您录入的文件夹路径不存在,请重新输入");
}else if(dir.exists()){
System.out.println("您录入的是文件路径,请输入一个文件夹路径");
}else {
return dir;
}
}
}
public static long getFilelength(File dir) {
long len = 0;
File[] subfile = dir.listFiles();
for (File subFile : subfile) {
if (subFile.isFile()) {
len = len + subFile.length();
} else {
len = len + getFilelength(subFile);
}
}
return len;
}
}