如何在Java中将字节大小转换为人类可读的格式?像1024应该变成"1 Kb"而1024*1024应该变成"1 Mb".
我有点厌倦为每个项目编写这个实用工具方法.Apache Commons中是否有任何静态方法?
我需要使用合理的单位将文件大小显示为String.
例如
1L ==> "1 B";
1024L ==> "1 KB";
2537253L ==> "2.3 MB"
Run Code Online (Sandbox Code Playgroud)
等等
我提出了自己的解决方案,它有类似的缺点:
private static final long K = 1024;
private static final long M = K * K;
private static final long G = M * K;
private static final long T = G * K;
public static String convertToStringRepresentation(final long value){
final long[] dividers = new long[] { T, G, M, K, 1 };
final String[] units = new String[] …Run Code Online (Sandbox Code Playgroud)