Java - Konwertuj rozmiar czytelny dla człowieka na bajty

Znalazłem wiele informacji na temat konwertowania surowych informacji bajtowych do formatu czytelnego dla człowieka, ale muszę zrobić odwrotnie, tj. Przekonwertować ciąg „1,6 GB” na wartość długą 1717990000. Czy istnieje wbudowany / dobrze- zdefiniowany sposób, aby to zrobić, czy raczej będę musiał rzucić własną?

[Edytuj]: Oto mój pierwszy cios ...

static class ByteFormat extends NumberFormat {
    @Override
    public StringBuffer format(double arg0, StringBuffer arg1, FieldPosition arg2) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public StringBuffer format(long arg0, StringBuffer arg1, FieldPosition arg2) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public Number parse(String arg0, ParsePosition arg1) {
        return parse (arg0);
    }

    @Override
    public Number parse(String arg0) {
        int spaceNdx = arg0.indexOf(" ");
        double ret = Double.parseDouble(arg0.substring(0, spaceNdx));
        String unit = arg0.substring(spaceNdx + 1);
        int factor = 0;
        if (unit.equals("GB")) {
            factor = 1073741824;
        }
        else if (unit.equals("MB")) {
            factor = 1048576;
        }
        else if (unit.equals("KB")) {
            factor = 1024;
        }

        return ret * factor;
    }
}

questionAnswers(6)

yourAnswerToTheQuestion