From 3fad4189646cca5d6db99ccfe79be695ef765d03 Mon Sep 17 00:00:00 2001 From: Keuin Date: Sun, 30 Jul 2023 19:04:12 +0800 Subject: Refactor: extract pretty duration to a function. Create `pretty` package for creating human friendly strings --- common/pretty/bytesize.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 common/pretty/bytesize.go (limited to 'common/pretty/bytesize.go') diff --git a/common/pretty/bytesize.go b/common/pretty/bytesize.go new file mode 100644 index 0000000..c0bfcbc --- /dev/null +++ b/common/pretty/bytesize.go @@ -0,0 +1,19 @@ +package pretty + +import "fmt" + +func Bytes(b uint64) string { + if b < 1000 { + return fmt.Sprintf("%d Byte", b) + } + if b < 1000_000 { + return fmt.Sprintf("%.2f KiB", float64(b)/1024) + } + if b < 1000_000_000 { + return fmt.Sprintf("%.2f MiB", float64(b)/1024/1024) + } + if b < 1000_000_000_000 { + return fmt.Sprintf("%.2f GiB", float64(b)/1024/1024/1024) + } + return fmt.Sprintf("%.2f TiB", float64(b)/1024/1024/1024/1024) +} -- cgit v1.2.3