我需要使用合理的单位将文件大小显示为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)