我正在下载各种大小的文件,并且喜欢
显示有关文件大小的用户友好输出。
我已经尝试过这个:
double line= (totalBytes/(1024*1024));
DecimalFormat dec = new DecimalFormat("0.00");
String result = dec.format(line);
result = result.concat("MB");
仅当大小约为 1 MB 时才有效。如果大小是 1200000 字节,我得到“1.2MB”。
但是如果假设文件大小是 46 字节,如何使其动态。
更新
如何显示 46 字节的大小,如 0.000046MB 或显示 500KB,如 0.5MB。
这必须即时完成。我希望用户友好的输出始终显示 X.XMB
无论有多少字节。
最佳答案
最简单的解决方案是检查数字是否大于/小于某个因子并相应地进行除法。
所以
if (totalBytes < 1024){
//bytes
}else if (totalBytes < 1024*1024){
//kilobytes
} //etc
关于java 将 GB、Mb、KB 和字节精确转换为 double ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8107377/