Java 字節(jié)轉(zhuǎn)人類(lèi)可讀形式

Java 字節(jié)轉(zhuǎn)人類(lèi)可讀形式

public static String humanReadableByteCountBin(long bytes) {
long absB = bytes == Long.MIN_VALUE ? Long.MAX_VALUE : Math.abs(bytes);
if (absB < 1024) {
return bytes + " B";
}
long value = absB;
CharacterIterator ci = new StringCharacterIterator("KMGTPE");
for (int i = 40; i >= 0 && absB > 0xfffccccccccccccL >> i; i -= 10) {
value >>= 10; //右移10位
ci.next();
}
value *= Long.signum(bytes);
return String.format("%.1f %ciB", value / 1024.0, ci.current());
}

                          SI     BINARY

               0:        0 B        0 B
              27:       27 B       27 B
             999:      999 B      999 B
            1000:     1.0 kB     1000 B
            1023:     1.0 kB     1023 B
            1024:     1.0 kB    1.0 KiB
            1728:     1.7 kB    1.7 KiB
          110592:   110.6 kB  108.0 KiB
         7077888:     7.1 MB    6.8 MiB
       452984832:   453.0 MB  432.0 MiB
     28991029248:    29.0 GB   27.0 GiB
   1855425871872:     1.9 TB    1.7 TiB
9223372036854775807:  9.2 EB    8.0 EiB   (Long.MAX_VALUE)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容