[컴] kilo, mega, tera 등 으로 변환하는 방법

단위절삭, 단위당 문자 넣기, 캐릭터




kilo, mega tera 등을 쉽게 만드는 code




public static String humanReadableByteCount(long bytes, boolean si) {

    int unit = si ? 1000 : 1024;
    if (bytes < unit) return bytes + " B";
    int exp = (int) (Math.log(bytes) / Math.log(unit));
    String pre = (si ? "kMGTPE" : "KMGTPE").charAt(exp-1) + (si ? "" : "i");
    return String.format("%.1f %sB", bytes / Math.pow(unit, exp), pre);

}


/*
 * @example
        1,123,234,567  --> 11억 2323만
        1,123,235,567  --> 11억 2324만
*/
function humanReadableMoney($value) {
    $unit = 10000;

    if ($value < $unit) return $value;

 $value = round($value, -log10($unit-1));
 $retStr = '';
    while($value >= $unit){
        $exp = intval(log10($value) / log10($unit));
        $pre = mb_substr("만억조", $exp-1, 1);
        $hunit = pow($unit, $exp);
  $hval = intval($value / $hunit);
        $value = $value - ($hval * $hunit);
  $retStr .= "{$hval}{$pre} ";
    }
 return trim($retStr);
}

댓글 없음:

댓글 쓰기