/*
nowjava.com - 时代Java 提供
*/
//package com.nowjava;
import java.math.BigDecimal;
public class Main {
public static void main(String[] argv) {
long longSize = 12312342;
System.out.println(toStringSize(longSize));
}
public static final long SIZE_BT = 1024L;
public static final long SIZE_KB = SIZE_BT * 1024L;
public static final long SIZE_MB = SIZE_KB * 1024L;
/*
from n o w j a v a . c o m
*/
public static final long SIZE_GB = SIZE_MB * 1024L;
public static final int SACLE = 2;
public static String toStringSize(Long longSize) {
if (longSize >= SIZE_BT && longSize < SIZE_KB) {
return longSize / SIZE_BT + "KB";
} else if (longSize >= SIZE_KB && longSize < SIZE_MB) {
return longSize / SIZE_KB + "MB";
} else if (longSize >= SIZE_MB && longSize < SIZE_GB) {
BigDecimal longs = new BigDecimal(Double.valueOf(longSize + "")
.toString());
BigDecimal sizeMB = new BigDecimal(Double.valueOf(SIZE_MB + "")
.toString());
String result = longs.divide(sizeMB, SACLE,
BigDecimal.ROUND_HALF_UP).toString();
return result + "GB";
} else if (longSize >= SIZE_GB) {
BigDecimal longs = new BigDecimal(Double.valueOf(longSize + "")
.toString());
BigDecimal sizeMB = new BigDecimal(Double.valueOf(SIZE_GB + "")
.toString());
/**代码未完, 请加载全部代码(NowJava.com).**/
本文系作者在时代Java发表,未经许可,不得转载。如有侵权,请联系nowjava@qq.com删除。