存储单位/文件大小 转如何和转B KB MB GB TB
bit是最小的存储单位,1字节为8位二进制数。
1Byte = 8bit,被称一个存储元。
以下为换的公式
1KB = 1024B
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
应用场景在哪里
开发人员需要把文件大小和存储空间显示给用户看等的时候,
常常把存储占用空间的长度long字节,换算为更好看和容易识别的或者说是用户体验更好表示方法。
那么怎么去转换呢
假设长度:5242880字节
多少KB = 5242880/1024
多少MB = 5242880/1024/1024
.....
以此类推
那代码很显然
if(5242880 < 1024)
return B
else if(5242880 < 1024 * 1024)
return KB
....
再配合简单四射五入 System.format("%.2f", x) 就完美了。
按照这种思路得public static String formatBytes(long size) {
if(size==0)
return "0B";
long kb = 1024;
long mb = kb * kb;
long gb = mb * kb;
long tb = gb * kb;