size
dstgo/size est une bibliothèque très pratique pour convertir mutuellement des chaînes et des tailles de fichiers
Adresse du dépôt : dstgo/size: Fast conversion between file size and string (github.com)
Adresse de la documentation : dstgo/size: Fast conversion between file size and string (github.com)
Installation
$ go get https://github.com/dstgo/sizeUtilisation
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
}Cette bibliothèque est très simple à utiliser, elle expose uniquement deux fonctions
go
func ParseSize(str string) SizeMetaParseSize convertit une chaîne en une structure SizeMeta, qui stocke la taille des données et l'unité de taille
go
func ParseTargetSize(str string, size Size) SizeMetaParseTargetSize convertit une chaîne en un SizeMeta de taille spécifiée
Exemple :
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())
}Après conversion, vous pouvez utiliser la méthode Round pour modifier le nombre de décimales, ou utiliser la méthode String pour obtenir sa forme chaîne. Exemple de sortie :
1.20MB
1.2
2713.60KB