ParseBool
将字符串转换为布尔值
接受真值:1,t,T,TRUE,True,true
接受假值:0,f,F,FALSE,False,false
其他任何值都返回一个错误
func ParseBool(str string) (value bool, err error)
func main(){
fmt.Println(strconv.ParseBool("1"))
}
FormatBool
将布尔值转换为字符串“true”或“false”
func FormatBool(b bool) string
func main(){
fmt.Println(strconv.FormatBool(0<1))
}
AppendBool
将布尔值b转换为字符串“true”或“false”,然后将结果追加到dst的尾部,返回值追加后的[]bytefunc
AppendBool(dst []byte, b bool) []byte
func main(){
ret := make([]byte,0)
ret = strconv.AppendBool(ret, 0 < 1)
fmt.Printf("%s\n", ret)
}
ParseFloat
将字符串转换为浮点数
s:要转换的字符串
bitSize:指定浮点类型(32:float32;64:float64)
func ParseFloat(s string, bitSize int)(f float64, err error)
func main(){
ret := "0.12345678901234567890"
f, err := strconv.ParseFloat(ret, 32)
fmt.Println(f, err)
fmt.Println(float32(f), err)
}
ErrRange、ErrSyntax、NumError
ErrRange表示值超处范围var ErrRange = errors.New(“value out of range”)
ErrSyntax表示语法不正确var ErrSyntax = errors.New(“invalid syntax”)
NumError记录转换失败
ParseInt
将字符串转换为int类型
base:进位制(2进制到36进制)
bitSize:指定整数类型(0:int;8:int8;16:int16;32:int32;64:int64)
如果base为0,则根据字符串前缀判断进位制(0x:16,0:8,其他:10)
func ParseInt(s string, base int, bitSize int)(i int64, err error)]
ParseUint
和ParseInt一样,只不过返回uint类型整数
func ParseUint(s string, base int, bitSize int)(u uint64,err error)
Atoi
相当于ParseInt(s, 10, 0)
ParseIntfunc Atoi(s string)(i int,err error)
func main(){
fmt.Println(strconv.Atoi("2147483647")) // 2147483647
}
FormatFloat
将浮点数f转换为字符串值
f:要转换的浮点数
fmt:格式标记(b:二进制;e:十进制;E:十进制;f:没有指数;g:e大指数,f其他情况;G:E大指数,f其他情况)
prec:精度(数字部分长度)
bitSize:指浮点类型(32、64)
func FormatFloat(f float64, fmt byte, prec, bitSize int)string
AppendFloat
将浮点数f转换为字符串值,并将结果追加到dst尾部
func AppendFloat(dst []byte, f float64, fmt byte, prec int, bitSize int) []byte
FormatInt
将int型整数i转换为字符串形式
base:进位制(2到36)
大于10进制的数,返回值使用小写字符’a’到’z’
func FormatInt(i int64, base int) string
FormatUint
同FormatInt只不过参数不同
func FormatUint(i uint64, base int) string
Itoa
相当于FormatInt(int64(i), 10)
func Itoa(i int) string {
return FormatInt(int64(i), 10)
}
AppendInt
将int型整数i转换为字符串形式,并追加到dst的尾部
func AppendInt(dst []byte, i int64, base int) []byte
AppendUint
同AppendInt参数传入不同
func AppendUint(dst []byte, i uint64, base int) []byte
Quote
将字符串s转换为“双引号”引起来的字符串,其中特殊字符串将被转换为转义字符,不可显示的字符将被转义为转义字符
func Quote(s string) string {
return quoteWith(s, '"', false, false)
}
func main() {
fmt.Println(strconv.Quote(`c:\windows`)) // c:\\windows
}
AppendQuote
func AppendQuote(dst []byte, s string) []byte
QuoteToASCII
将字符串s转换为双引号引起来的ASCII字符串,非ASCII字符和特殊字符将被转换为转义字符
func QutoteToASCII(s string) string
AppendQuoteToASCII
func AppendQuoteToASCII(dst []byte, s string)[]byte
QuoteRune
将unicode字符转换为单引号引起来的字符串,特殊字符将被转换为转义字符
func QuoteRune(r rune)string
AppendQuoteRune
func AppendQuoteRune(dst []byte,r rune)[]byte
QuoteRuneToASCII
func QuoteRuneToASCII(r rune) string
AppendQuoteRune
func AppendQuoteRuneToASCII(dst []byte, r rune) []byte