以下是一个简单的示例程序,使用 golang 按行读取文件内容:
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
file, err := os.Open("filename.txt")
if err != nil {
fmt.Println("Error opening file:", err)
return
}
defer file.Close()
scanner := bufio.NewScanner(file)
for scanner.Scan() {
fmt.Println(scanner.Text())
}
if err := scanner.Err(); err != nil {
fmt.Println("Error scanning file:", err)
return
}
}
该程序使用 os.Open
函数打开指定的文件,并返回一个 *os.File
对象。然后,使用 bufio.NewScanner
函数创建一个扫描器对象,用于按行读取文件内容。
接下来,使用 scanner.Scan()
方法依次读取每一行,并使用 fmt.Println
输出到控制台上。
最后,检查扫描器对象是否有错误(例如:文件不存在、无法访问等),如果有则输出错误信息。