>백엔드 개발 >Golang >Golang에서 텍스트 파일의 내용을 변수로 읽는 방법은 무엇입니까?

Golang에서 텍스트 파일의 내용을 변수로 읽는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-14 14:07:021081검색

How to read the contents of a text file into a variable in Golang?

Golang에서 텍스트 파일 읽기

Golang에서 "file.txt"의 내용을 변수로 어떻게 읽어올 수 있나요?

package main

import (
    "fmt"
    "os"
    "log"
)

func main() {
    file, err := os.Open("file.txt")
    if err != nil {
        log.Fatal(err)
    }

    fmt.Print(file)
}

정답:

제공된 코드는 파일을 성공적으로 읽었지만 파일 내용이 아닌 파일 설명자의 포인터 값을 인쇄합니다. 파일 콘텐츠를 얻으려면 파일 설명자에서 읽어야 합니다.

파일 콘텐츠 읽기 옵션:

  • 모두 읽기: 모든 파일 콘텐츠를 바이트로 메모리에 읽어옵니다.
b, err := io.ReadAll(file)
fmt.Print(b)
  • 청크로 읽기: 파일 콘텐츠를 더 작은 청크로 읽어 대용량 파일의 메모리 문제를 방지합니다.
buf := make([]byte, 32*1024) // Define your buffer size.

for {
    n, err := file.Read(buf)

    if n > 0 {
        fmt.Print(buf[:n]) // Your read buffer.
    }

    if err == io.EOF {
        break
    }
    if err != nil {
        log.Printf("read %d bytes: %v", n, err)
        break
    }
}
  • bufio 스캐너: 기본적으로 줄바꿈으로 토큰을 전진시킵니다.
scanner := bufio.NewScanner(file)

for scanner.Scan() {
    fmt.Println(scanner.Text()) // Token in unicode-char
    fmt.Println(scanner.Bytes()) // Token in bytes
}

추가 리소스:

  • [go-lang 파일 치트시트](https://go-lang-file-utils.readthedocs.io/)

위 내용은 Golang에서 텍스트 파일의 내용을 변수로 읽는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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