我下载各种尺寸的文件,喜欢上 显示有关文件大小的用户友好输出。
我试过这个:
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
不管有多少字节。
答案 0 :(得分:3)
最简单的解决方案是检查数字是否大于/小于因子并相应地应用除法。
所以
if (totalBytes < 1024){
//bytes
}else if (totalBytes < 1024*1024){
//kilobytes
} //etc
答案 1 :(得分:1)
当然,你需要
double line= ((double)totalBytes/(1024*1024));