27 lignes
577 o
Go
27 lignes
577 o
Go
package util
|
|
|
|
import (
|
|
"fmt"
|
|
)
|
|
|
|
func FormatFilesize(bytes int64) string {
|
|
var unit string
|
|
var value float64
|
|
if bytes >= 1024*1024*1024*1024 {
|
|
unit = "TiB"
|
|
value = float64(bytes) / (1024 * 1024 * 1024 * 1024)
|
|
} else if bytes >= 1024*1024*1024 {
|
|
unit = "GiB"
|
|
value = float64(bytes) / (1024 * 1024 * 1024)
|
|
} else if bytes >= 1024*1024 {
|
|
unit = "MiB"
|
|
value = float64(bytes) / (1024 * 1024)
|
|
} else if bytes >= 1024 {
|
|
unit = "KiB"
|
|
value = float64(bytes) / (1024)
|
|
} else {
|
|
unit = "B"
|
|
value = float64(bytes)
|
|
}
|
|
return fmt.Sprintf("%.1f %s", value, unit)
|
|
}
|