【java常见问题】——如何获取文件夹大小?

        我们知道,当File对象代表一个文件时,通过length()方法可以获取文件的大小(以字节为单位)。若要获取目录(文件夹)的大小,可以遍历目录中所有文件,然后将每个文件的大小相加,相加之和即为文件夹大小。

实现代码如下:

//定义成员变量,用于累加文件大小
long size = 0;
//统计目录大小的方法
public void getDirSize(File file) {
	if(file.isFile()) {
		//如果是文件,获取文件大小累加
		size += file.length();
	}else if(file.isDirectory()) {
		//获取目录中的文件及子目录信息
		File[] f1 = file.listFiles();
		for(int i = 0; i < f1.length(); i++) {
			//调用递归遍历f1数组中的每一个对象
			getDirSize(f1[i]);
		}
	}
}


注:如果要以K为单位,可以使用“size%1024==0?(size/1024):(size/1024+1)”公式计算。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值