>  기사  >  백엔드 개발  >  Golang 문자를 정수로 변환하는 효율적인 방법 공유

Golang 문자를 정수로 변환하는 효율적인 방법 공유

王林
王林원래의
2024-04-03 15:36:02619검색

Go에서 문자를 정수로 효율적으로 변환하기 위한 지침: strconv.ParseInt() 함수를 사용하여 변환할 문자열과 기준을 제공합니다. 지정된 형식의 데이터를 읽기 위한 형식 문자열을 지정하려면 fmt.Scanf() 함수를 사용하십시오. 실제 사례: strconv.ParseInt()를 사용하여 파일을 한 줄씩 읽고 정수 값을 추출합니다.

Golang 문자를 정수로 변환하는 효율적인 방법 공유

Go에서 문자를 정수로 효율적으로 변환하기 위한 가이드

Go에서는 문자를 정수로 변환하는 것이 일반적인 작업입니다. 이를 수행하는 방법에는 여러 가지가 있지만 효율적이고 구현하기 쉬운 방법을 선택하는 것이 중요합니다.

strconv

strconv 패키지는 문자열을 int64로 변환하는 데 사용할 수 있는 ParseInt라는 함수를 제공합니다. 이 함수는 변환할 문자열과 사용할 기본을 허용합니다. strconv 包提供了一个名为 ParseInt 的函数,可用于将字符串转换为 int64。此函数接受要转换的字符串和要使用的基数。

import (
    "strconv"
)

func main() {
    str := "123"

    // 将字符串转换为 int64
    num, err := strconv.ParseInt(str, 10, 64)
    if err != nil {
        // 处理错误
    }

    fmt.Println(num) // 输出:123
}

fmt

fmt 包还提供了 Scanf 函数,它可以从字符串中读取指定格式的数据。

import (
    "fmt"
)

func main() {
    str := "123"

    var num int64
    _, err := fmt.Scanf(str, "%d", &num)
    if err != nil {
        // 处理错误
    }

    fmt.Println(num) // 输出:123
}

实战案例

假设我们有一个包含单词和整数值的文件,并且我们希望将整数值提取到 slice 中:

apple 1
banana 2
cherry 3

我们可以使用 bufio 包来逐行读取文件,然后使用 strconvfmt 将行中整数值转换为 int

package main

import (
    "bufio"
    "fmt"
    "os"
    "strconv"
)

func main() {
    f, err := os.Open("values.txt")
    if err != nil {
        // 处理错误
    }
    defer f.Close()

    var values []int

    scanner := bufio.NewScanner(f)
    for scanner.Scan() {
        line := scanner.Text()
        parts := strings.Split(line, " ")
        if len(parts) == 2 {
            num, err := strconv.ParseInt(parts[1], 10, 32)
            if err != nil {
                // 处理错误
            }
            values = append(values, int(num))
        }
    }

    if err := scanner.Err(); err != nil {
        // 处理错误
    }

    fmt.Println(values) // 输出:[1 2 3]
}

🎜fmt🎜🎜🎜 fmt 패키지는 문자열에서 지정된 형식의 데이터를 읽을 수 있는 Scanf 함수도 제공합니다. 🎜rrreee🎜🎜실용 예🎜🎜🎜단어와 정수 값이 포함된 파일이 있고 정수 값을 슬라이스로 추출하려고 한다고 가정합니다. 🎜rrreee🎜bufio 패키지를 사용할 수 있습니다. 한 줄씩 수행하려면 파일을 읽고 strconv 또는 fmt를 사용하여 줄의 정수 값을 int로 변환하세요. 🎜rrreee

위 내용은 Golang 문자를 정수로 변환하는 효율적인 방법 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.