[日常] Go-逐行读取文本信息
go逐行读取文本信息:
1.os包提供了操作系统函数的不依赖平台的接口,Open方法打开一个文件用于读取,func Open(name string) (file *File, err error)
2.bufio包实现了有缓冲的I/O,NewReader方法创建一个具有默认大小缓冲、从r读取的*Reader,func NewReader(rd io.Reader) *Reader
3.*Reader类的ReadBytes读取直到第一次遇到delim字节,返回一个包含已读取的数据和delim字节的切片
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
package main import ( "bufio" "fmt" "io" "os" "strings" "log" ) func main() { file,err:=os.Open("a.txt") if err != nil { log.Fatal(err) } reader:=bufio.NewReader(file) for{ line,err:=reader.ReadBytes('\n') if err !=nil{ if err==io.EOF{ break } log.Fatal(err) } lineStr:=strings.TrimSpace(string(line)) fmt.Println(lineStr) } }
更多精彩