다양한 패키지에서 문자열 변환 기능을 제공하지만 주로 strconv, fmt를 사용합니다.
strconv 패키지는 문자열을 다른 데이터 타입으로 변환하거나, 다른 데이터 타입을 문자열로 변환하는 함수를 제공합니다.
문자열을 다른 타입으로 변환
str := 123
num, _ := strconv.Atoi(str)
str := "true"
b, _ := strconv.ParseBool(str)
str := "3.1415"
f, _ := strconv.ParseFloat(str, 64)
str := "123"
num, _ := strconv.ParseInt(str, 10, 64)
다른 타입을 문자열로 변환
num := 123
str := strconv.Itoa(num)
b := true
str := strconv.FormatBool(b)
f := 3.1415
str := strconv.FormatFloat(f, 'f', 4, 64)
num := int64(123)
str := strconv.FormatInt(num, 10)
num := uint64(123)
str := strconv.FormatUint(num, 10)
fmt 패키지는 형식을 지정하여 문자열로 변환하거나 문자열을 다른 타입으로 변환하는 다양한 기능을 제공합니다.
num := 123
str := fmt.Sprintf("%d", num)
fmt.Println(str) // "123"
num := 123
str := fmt.Sprint(num)
fmt.Println(str) // "123"
num := 123
str := fmt.Sprintln(num)
fmt.Println(str) // "123\n"
str := "123"
var num int
_, err := fmt.Sscanf(str, "%d", &num)
if err != nil {
fmt.Println(err)
} else {
fmt.Println(num) // 123
}