递归求一个文件夹大小(二)

不打扰是莪最后的温柔 提交于 2019-11-29 18:18:43
public class Test1 {    public static void main(String[] args) {        // 统计文件夹大小        long len = getDirLength(new File("D:\\JavaSE"));        System.out.println(len + "字节");    }    // 返回值long类型,参数列表:File dir    public static long getDirLength(File dir) {        // 定义统计变量        long len = 0;        // 获取目录下的所有子内容        File[] files = dir.listFiles();        // 判断是否为空        if (files != null) {            for (File file : files) {                // 如果是文件,累计文件的大小(递归出口)                if (file.isFile()) {                    len += file.length();                } else {                    // 如果是文件夹,就递归调用                    len += getDirLength(file); // 别忘了累加这个子文件夹的大小                }            }        }        return len;    }}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!