Я нашел этот пример программы, которая преобразует ввод и печатает его на основе значения. Но я заметил, что если я добавлю большее значение, я получу ошибкуУвеличить размер в конверте
integer number too large: 9394343298
Есть ли способ исправить это?
String readableFileSize = readableFileSize(939343298);
System.out.println("Result " + readableFileSize);
public static String readableFileSize(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];
}
работает для меня: http://ideone.com/NEbz6s – Zelldon
@Zelldon, вы не пытались изменить '939343298' на' 9394343298'. – Andremoniy
@Andremoniy aah спасибо, что ты прав! :) – Zelldon