■实例说明
我们经常讲一些格式化好的数据保存到文件中,然后一行行到读取文件进行处理,下面演示一种一行行读取文件的方法。
1)逐行读取文件
■实例代码[Golang] 纯文本查看 复制代码
package main
import (
"bufio"
"fmt"
"io"
"os"
)
// 一行行读取文件
func ReadLines(fileName string) ([]string, error) {
// 打开文件
file, err := os.Open(fileName)
if err != nil {
return nil, err
}
// 方法退出时关闭文件
defer file.Close()
lines := make([]string, 0)
// 一行行读取文件
br := bufio.NewReader(file)
for {
line, _, err := br.ReadLine()
if err == io.EOF {
break
}
// 这里放入切片中,也可以直接处理line数据
lines = append(lines, string(line))
}
return lines, nil
}
func main() {
fileName := "/data/readLines.txt"
lines, err := ReadLines(fileName)
fmt.Printf("err:%+v, lines=%+v", err, lines)
// 输出:err:<nil>, lines=[1234 5678 9012 zhongguo 中国]
}
|