size
dstgo/size adalah library yang praktis untuk konversi antara string dan ukuran file
Alamat Repositori: dstgo/size: Fast conversion between file size and string (github.com)
Alamat Dokumentasi: dstgo/size: Fast conversion between file size and string (github.com)
Instalasi
$ go get https://github.com/dstgo/sizePenggunaan
go
const (
B Size = 1
KB = B * 1024
MB = KB * 1024
GB = MB * 1024
TB = GB * 1024
PB = TB * 1024
)go
type SizeMeta struct {
Data float64
Unit Size
}Library ini sangat mudah digunakan hanya memiliki dua fungsi yang diekspos
go
func ParseSize(str string) SizeMetaParseSize mengonversi string menjadi struktur SizeMeta menyimpan ukuran data dan unit
go
func ParseTargetSize(str string, size Size) SizeMetaParseTargetSize mengonversi string menjadi SizeMeta dengan ukuran yang ditentukan
Contoh berikut:
go
package main
import (
"fmt"
"github.com/dstgo/size"
)
func main() {
parseSize := size.ParseSize("1.2MB")
fmt.Printf("%+v\n", parseSize)
fmt.Printf("%+v\n", parseSize.Round(1))
parseSize1 := size.ParseSize("2.3-asdajl")
fmt.Printf("%+v\n", parseSize1)
targetSize := size.ParseTargetSize("2.65MB", size.KB)
fmt.Printf("%+v", targetSize)
fmt.Printf("%+v", targetSize.String())
}Setelah konversi dapat menggunakan metode Round untuk memodifikasi berapa digit yang dipertahankan juga dapat menggunakan metode String untuk mendapatkan bentuk string contoh output berikut
1.20MB
1.2
2713.60KB