public static long toByte()

in analysis/gc-log/src/main/java/org/eclipse/jifa/gclog/util/GCLogUtil.java [36:66]


    public static long toByte(String sizeString, long divideIfNoUnit) {
        sizeString = sizeString.toLowerCase();
        int mid;
        for (mid = 0; mid < sizeString.length(); mid++) {
            char c = sizeString.charAt(mid);
            if (!Character.isDigit(c) && c != '.') {
                break;
            }
        }

        double size = Double.parseDouble(sizeString.substring(0, mid));
        String unit = sizeString.substring(mid).trim();
        switch (unit) {
            case "b":
                return (long) size;
            case "k":
            case "kb":
                return (long) (size * BYTE_UNIT_GAP);
            case "m":
            case "mb":
                return (long) (size * BYTE_UNIT_GAP * BYTE_UNIT_GAP);
            case "g":
            case "gb":
                return (long) (size * BYTE_UNIT_GAP * BYTE_UNIT_GAP * BYTE_UNIT_GAP);
            case "t":
            case "tb":
                return (long) (size * (BYTE_UNIT_GAP * BYTE_UNIT_GAP * BYTE_UNIT_GAP * BYTE_UNIT_GAP));
            default:
                return (long) (size / divideIfNoUnit);
        }
    }