package io;
import java.io.File;
/**
- 获取文件夹大小
- @author
*/
public class TestCount {
//大小
private long len;
//文件夹路径
private String path;
//文件的个数
private int fileSize;
//文件夹的个数
private int dirSize = -1;//不包含自身所在文件夹
//源
private File file;
public TestCount(String path) {
this.path = path;
this.file = new File(path);
count(this.file);
}
public int getFileSize() {
return fileSize;
}
public int getDirSize() {
return dirSize;
}
public long getLen() {
return len;
}
private void count(File file){
if(null != file && file.exists()){
if(file.isFile()){
this.fileSize++;
len += file.length();//大小
}else{//子孙级
this.dirSize++;
for(File f:file.listFiles()){
count(f);
}
}
}
}
public static void main(String[] args) {
TestCount c = new TestCount("E:/mycode/TestIO");
System.out.println(c.len);
System.out.println(c.getFileSize());
System.out.println(c.getDirSize());
}
}