package conver import ( "fmt" "github.com/dsnet/golib/unitconv" ) // ParseDataUnit parse 1Ki -> 1024, 1K -> 1000 func ParseDataUnit(unit string) (val float64, err error) { val, err = unitconv.ParsePrefix(unit, unitconv.AutoParse) return } func ParseDataUnitInt(unit string) (val int, err error) { v, err := ParseDataUnit(unit) val = int(v) return } func MustParseDataUnit(unit string) (val float64) { val, err := unitconv.ParsePrefix(unit, unitconv.AutoParse) if err != nil { panic(fmt.Errorf("error parse data unit %s, %s", unit, err.Error())) } return } func MustParseDataUnitInt(unit string) (val int) { return int(MustParseDataUnit(unit)) }