Skip to content

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/size

Penggunaan

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) SizeMeta

ParseSize mengonversi string menjadi struktur SizeMeta menyimpan ukuran data dan unit

go
func ParseTargetSize(str string, size Size) SizeMeta

ParseTargetSize 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

Golang by www.golangdev.cn edit