以用户友好的格式转换字节

时间:2013-09-16 19:04:08

标签: java

我从这个example找到了这段代码:

private static final String[] Q = new String[]{"", "K", "M", "G", "T", "P", "E"};

public String getAsString(long bytes)
{
    for (int i = 6; i > 0; i--)
    {
        double step = Math.pow(1024, i);
        if (bytes > step) return String.format("%3.1f %s", bytes / step, Q[i]);
    }
    return Long.toString(bytes);
}

我实现了这段代码但结果看起来很可疑。我试图从JVM获得可用的内存量,而我只有80 MB。您能否确认此代码正确地将字节转换为兆字节或千兆字节。

1 个答案:

答案 0 :(得分:1)

您的代码看起来是正确的。尝试在运行应用时更改-Xmx-Xms JVM值并查看差异。

例如,尝试运行:

JAVA_OPTS =“ - Xmx2G -Xms2G”java your.Class