やったこと
go言語で0埋めの関数なかったのでつくっった。
テストコードとか書いてないので確実に動くかはわかんないけど多分大丈夫(適当)
package main
import (
"errors"
"fmt"
"strconv"
"github.com/labstack/gommon/log"
)
func main() {
n := 1000
width := 3
var s string
s, err := padNumberWithZeros(n, width)
if err != nil {
log.Error("err : ", err)
return
}
fmt.Println(s)
}
// padNumberWithZeros : 数理をセロで埋めます
// n : 埋めたい数値
// width : 桁数
func padNumberWithZeros(n int, width int) (s string, err error) {
l := len(strconv.Itoa(n))
if l > width {
return "", errors.New("overflow")
}
padded := "%0" + strconv.Itoa(width) + "d"
s = fmt.Sprintf(padded, n%100)
// success
return s, nil
}