[JAVA] 바이트(Byte)를 용량 단위에 맞게 환산하기
/**
* 바이트(Byte)를 용량 단위에 맞게 환산하기
*
* @param strSize
* @return
*/
private String getSizeString(String strSize) {
if (strSize == null || strSize.length() == 0) {
return “0B”;
}
long nSize = 0;
String resultSize = “”;
try {
nSize = Long.parseLong(strSize);
DecimalFormat df = new DecimalFormat(“#,###.##”);
String[] arrUnit = {“B”, “KB”, “MB”, “GB”, “TB”, “PB”};
long nUnit = 1024;
long nSection = 1;
for (int i=0; i<6; i++) {
if (nSize < nSection * nUnit) {
resultSize = df.format(nSize * 1.0 / nSection) + arrUnit[i];
break;
}
nSection *= nUnit;
}
} catch (NumberFormatException e) {
resultSize = strSize + “B”;
} catch (Exception e) {
resultSize = strSize + “B”;
}
if (resultSize == null || resultSize.length() == 0) {
resultSize = strSize + “B”;
}
return resultSize;
}