在Android中使用RX将字节转换为KB,MB,GB,TB,...

时间:2019-04-13 14:19:28

标签: android rx-java rx-java2 rx-android

例如,我有这个值5465881,如何在Android中使用byte将此RX转换为KB,MB,GB,TB,...?

2 个答案:

答案 0 :(得分:1)

您可以在Formatter类中使用android.text.format.Formatter.formatFileSize或类似方法:

https://developer.android.com/reference/android/text/format/Formatter.html#formatFileSize(android.content.Context,%20long)

答案 1 :(得分:0)

您可以使用此方法

public static String formatSize(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];
}


formatSize(5465881) returns -> 5.2MB