Go strconv

Goのパッケージstrconvでよく使うものをまとめました。
ParseFloatを追加しました(2020.07.09)

func Atoi(s string) (int, error)

s(string型)をint型に変換して返す

例.

package main

import (
    "fmt"
    "log"
    "strconv"
)

func main() {
    number, err := strconv.Atoi("123")
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(number)
}

出力結果.

123

func Itoa(i int) string

i(int型)をstring型に変換して返す

例.

package main

import (
    "fmt"
    "strconv"
)

func main() {
    numberString := strconv.Itoa(123)
    fmt.Println(numberString)
}

出力結果.

123

func ParseInt(s string, base int, bitSize int) (i int64, err error)

baseの基数かつ、bitSizeのsを解釈し、値(int64型)を返す

例.

package main

import (
    "fmt"
    "log"
    "strconv"
)

func main() {
    v := "100"
    fmt.Print("original : ")
    fmt.Println(v)

    s1, err := strconv.ParseInt(v, 2, 10)
    if err != nil {
        log.Fatal(err)
    }
    fmt.Print("base2 : ")
    fmt.Println(s1)

    s2, err := strconv.ParseInt(v, 8, 10)
    if err != nil {
        log.Fatal(err)
    }
    fmt.Print("base8 : ")
    fmt.Println(s2)

    s3, err := strconv.ParseInt(v, 16, 10)
    if err != nil {
        log.Fatal(err)
    }
    fmt.Print("base16 : ")
    fmt.Println(s3)

}

出力結果.

original : 100
base2 : 4
base8 : 64
base16 : 256

func ParseFloat(s string, bitSize int) (float64, error)

string型をfloat64型に変換する
bitSize: 32 <- float32のとき
bitSize: 64 <- float64のとき
bitSizeが32でも結果がfloat64で返されるが, float32に値を変更せずに変換できるようになる

例.

package main

import (
    "fmt"
    "strconv"
)

func main() {
    s := "1.2345"

    f, err := strconv.ParseFloat(s, 64)
    if err != nil {
        panic(err)
    }

    fmt.Printf("f: %f\n", f)
}

出力結果.

f: 1.234500
スポンサーリンク
レクタングル広告(大)
レクタングル広告(大)

シェアする

  • このエントリーをはてなブックマークに追加

フォローする