go语言-包-strconv包的使用

package main

import (
    "fmt"
    "strconv"
    "unicode/utf8"
)

func main() {
    ascii := "abc我爱中华人民共和国"
    fmt.Println([]byte(ascii))
    fmt.Println([]rune(ascii))

    fmt.Println(len(ascii))
    fmt.Println(len([]rune(ascii)))

    fmt.Println(utf8.RuneCountInString(ascii))

    // 转换成字符串输出
    fmt.Println(string([]byte(ascii)))
    fmt.Println(string([]rune(ascii)))

    // 1. func Itoa(i int) string
    // 将整数转换为十进制字符串形式(即:FormatInt(i, 10) 的简写)
    // 例1:
    i1 := 10
    s1 := strconv.Itoa(i1)
    fmt.Printf("1: %T,%#v
", s1, s1)

    // 2. func Atoi(s string) (int, error)
    // 将字符串转换为十进制整数,即:ParseInt(s, 10, 0) 的简写)
    // 例1:
    ch, err := strconv.Atoi("97")
    fmt.Println("2: ", ch, err)
    // 例2:
    v2 := "10"
    if v2, err := strconv.Atoi(v2); err == nil {
        fmt.Printf("2: %T,%#v
", v2, v2)
    }

    // 3. func FormatBool(b bool) string
    // 将布尔值转换为字符串 true 或 false
    //
    vbool := true
    sbool := strconv.FormatBool(vbool)
    fmt.Printf("3: %T,%#v
", sbool, sbool)

    // 4. func FormatInt(i int64, base int) string
    // 5. func FormatUint(i uint64, base int) string
    // 将整数转换为字符串形式。base 表示转换进制,取值在 2 到 36 之间。
    // 结果中大于 10 的数字用小写字母 a - z 表示。
    // 例FormatInt
    v4 := int64(-42)
    s4 := strconv.FormatInt(v4, 10)
    fmt.Printf("4: %T,%#v
", s4, s4)
    s4 = strconv.FormatInt(v4, 16)
    fmt.Printf("4: %T,%#v
", s4, s4)

    fmt.Println(strconv.FormatFloat(3.1415926, 'f', 10, 64)) //转成小数位为10位的64位浮点数

    pi, err := strconv.ParseFloat("3.1415926", 64)
    fmt.Println(pi, err)

    fmt.Println(strconv.FormatBool(true))
    fmt.Println(strconv.ParseBool("t"))

    b, err := strconv.ParseInt("5", 10, 8)
    fmt.Println(b, err)

    fmt.Println(strconv.FormatInt(15, 2))
}
原文地址:https://www.cnblogs.com/malukang/p/12723186.html