~~~
默认是吧文本全部数据读取, 我想实现 将数据放入数组,方便我一行行读取进行判断类操作
package main
import (
"fmt"
"bufio"
"os"
)
func main() {
ReadLine2("1.txt")
}
func ReadLine2(filename string) {
f, _ := os.Open(filename)
defer f.Close()
r := bufio.NewReader(f)
for {
aa, err := readLine(r)
if err != nil {
break
}
fmt.Println(string(aa))
}
}
func readLine(r *bufio.Reader) (string, error) {
line, isprefix, err := r.ReadLine()
for isprefix && err == nil {
var bs []byte
bs, isprefix, err = r.ReadLine()
line = append(line, bs...)
}
return string(line), err
}
~~~
https://github.com/Juntaran/WeiboCrawler/blob/master/utils/readFile.go
前天写的按行读文件~
#1
更多评论
这个很简单的,就用 bufio.Scanner 这个类型就可以。
```
r, _ := os.Open(filename)
defer r.Close()
s := bufio.NewScanner(r)
for s.Scan() { // 循环直到文件结束
line := s.Text() // 这个 line 就是每一行的文本了,string 类型
}
```
#2