一、目录
二、简介
该库功能与字面意思一样(string[字符串]convert[转换])。用于字符串与各种基础类型的相互转换。
并封装了一些跨类型拼接函数,以及转义函数。
三、分类
1. 基础类型 与 字符串 互转
FormatBool Bool转字符串
FormatFloat Float转字符串
FormatInt Int转字符串
FormatUint 无符号int转字符串
Itoa 64位10进制转字符串,对FormatInt的封装
ParseBool 字符串转Bool
ParseFloat 字符串转Float
ParseInt 字符串转Int
ParseUint 字符串转无符号Int
Atoi 字符串转64位10进制整数
2. 转义字符串
Quote
QuoteRune
QuoteRuneToASCII
QuoteRuneToGraphic
QuoteToASCII
QuoteToGraphic
Unquote
UnquoteChar
3. 字符串拼接其他基础类型
AppendBool
AppendFloat
AppendInt
AppendQuote
AppendQuoteRune
AppendQuoteRuneToASCII
AppendQuoteRuneToGraphic
AppendQuoteToASCII
AppendQuoteToGraphic
AppendUint
4. 判断字符串属性
IsGraphic
IsPrint
CanBackquote
5. 库函数错误处理
Error
四、实例
1. 基础类型 与 字符串 互转
package main
import (
"fmt"
"strconv"
)
func main() {
// 基础类型 转 字符串
// Bool转字符串
tmpStr := strconv.FormatBool(true)
fmt.Printf("类型%T, 值%v\n", tmpStr, tmpStr)
// Int转字符串
tmpStr = strconv.FormatInt(323, 10)
fmt.Printf("类型%T, 值%v\n", tmpStr, tmpStr)
// Int转字符串
tmpStr = strconv.Itoa(320)
fmt.Printf("类型%T, 值%v\n", tmpStr, tmpStr)
// 字符串 转 基础类型
// 字符串转Bool
if tmpBool, err := strconv.ParseBool(`false`); nil != err {
fmt.Println(err)
} else {
fmt.Printf("类型%T, 值%v\n", tmpBool, tmpBool)
}
}
2. 转义字符串
package main
import (
"fmt"
"strconv"
)
func main() {
s := strconv.Quote(`"Fran & Freddie's Diner ☺"`) // there is a tab character inside the string literal
fmt.Println(s)
}
3. 字符串拼接其他基础类型
package main
import (
"fmt"
"strconv"
)
func main() {
b := []byte("bool:")
b = strconv.AppendBool(b, true)
fmt.Println(string(b))
}
4. 判断字符串属性
package main
import (
"fmt"
"strconv"
)
func main() {
shamrock := strconv.IsGraphic('☘')
fmt.Println(shamrock)
a := strconv.IsGraphic('a')
fmt.Println(a)
bel := strconv.IsGraphic('\007')
fmt.Println(bel)
}
5. 库函数错误处理
package main
import (
"fmt"
"strconv"
)
func main() {
str := "Not a number"
if _, err := strconv.ParseFloat(str, 64); err != nil {
e := err.(*strconv.NumError)
fmt.Println("Func:", e.Func)
fmt.Println("Num:", e.Num)
fmt.Println("Err:", e.Err)
fmt.Println(err)
}
}