首頁 >後端開發 >Golang >如何在 Golang 中讀取文字檔?

如何在 Golang 中讀取文字檔?

Barbara Streisand
Barbara Streisand原創
2024-11-27 07:10:13657瀏覽

How do I read text files in Golang?

在 Golang 中讀取文字檔案

在處理文字檔案時,將其內容讀入變數是必要的。 Golang 提供了多種方法來實現此目的,如下所示:

直接輸出

要列印整個文字檔案的內容,請使用 fmt.Print(file)。但是,這將輸出文件描述符的指標值,而不是文件的內容。

ioutil.ReadAll

此函數將所有檔案內容以位元組讀取到記憶體中:

b, err := io.ReadAll(file)
fmt.Print(b)

io.Reader.Read

以較小的區塊讀取對於大塊來說可以更節省記憶體檔案:

buf := make([]byte, 32*1024) // Define buffer size

for {
    n, err := file.Read(buf)
    if n > 0 {
        fmt.Print(buf[:n])
    }

    if err == io.EOF {
        break
    }
    if err != nil {
        log.Printf("read %d bytes: %v", n, err)
        break
    }
}

bufio.Scanner

使用掃描儀根據分隔符號標記文件,預設為換行符:

scanner := bufio.NewScanner(file)

for scanner.Scan() {
    fmt.Println(scanner.Text()) // Token as unicode characters
    fmt.Println(scanner.Bytes()) // Token as bytes
}

有關其他資訊和範例,請參閱Golang文件備忘單以了解全面的文件處理技術。

以上是如何在 Golang 中讀取文字檔?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn