以下是一个使用Go编程语言按行读取文本文件的代码示范:
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
// 打开文件
file, err := os.Open("example.txt")
if err != nil {
fmt.Println("无法打开文件:", err)
return
}
defer file.Close()
// 创建 scanner ,通过它逐行读取文件内容
scanner := bufio.NewScanner(file)
for scanner.Scan() {
// 对于每一行,输出到控制台
fmt.Println(scanner.Text())
}
if err := scanner.Err(); err != nil {
fmt.Println("文件读取错误:", err)
return
}
}
os.Open
函数用于打开文件。如果文件不存在或打开过程中出现错误,该函数将返回一个非 nil 的错误对象。defer
语句用于在程序退出前关闭文件。- 使用
bufio.NewScanner
函数创建一个 scanner 对象,我们可以通过它逐行读取文件内容。 - 使用
scanner.Scan
函数逐行读取文件,并使用scanner.Text
函数获取每行的内容。 - 在循环结束后,检查是否有读取文件时发生的错误。