java 格式化输出byte_Java中byte大小格式化

a493737c1d3de7f8033eb5088b5f0fd0.png

java.jpg

方法一

public static String readableFileSize(long size) {

if (size <= 0) return "0";

final String[] units = new String[]{"B", "kB", "MB", "GB", "TB"};

int digitGroups = (int) (Math.log10(size) / Math.log10(1024));

return new DecimalFormat("#,##0.#").format(size / Math.pow(1024, digitGroups)) + " " + units[digitGroups];

}

方法二

public static String humanReadableByteCount(long bytes, boolean si) {

int unit = si ? 1000 : 1024;

if (bytes < unit) return bytes + " B";

int exp = (int) (Math.log(bytes) / Math.log(unit));

String pre = (si ? "kMGTPE" : "KMGTPE").charAt(exp - 1) + (si ? "" : "i");

return String.format("%.1f %sB", bytes / Math.pow(unit, exp), pre);

}

方法三

使用org.apache.commons.io.FileUtils.byteCountToDisplaySize(long size)

FileUtils.byteCountToDisplaySize(long size)

參考:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值