From 7fd817f6d1ead3de85294c1893a6e1572a1d12e3 Mon Sep 17 00:00:00 2001 From: Keuin Date: Fri, 7 Jul 2023 00:34:55 +0800 Subject: Refactor: move file operations into single package. --- common/files/bytesize.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 common/files/bytesize.go (limited to 'common/files/bytesize.go') diff --git a/common/files/bytesize.go b/common/files/bytesize.go new file mode 100644 index 0000000..95f857a --- /dev/null +++ b/common/files/bytesize.go @@ -0,0 +1,19 @@ +package files + +import "fmt" + +func PrettyBytes(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