os 包 和 bufio 包

osOpen(name)Create(name)bufioosbufio

os.Open 与 os.OpenFile 以及 File.Read

Open(name string) (*File, error)
PathError
name*FileFileerror
OpenFile(name string, flag int, perm FileMode) (*File, error)

通过指定 文件名文件路径+文件名、文件操作模式、文件权限三个参数打开一个文件,之后可对此文件进行读写操作。

nameflagO_RDONLYO_WRONLYO_RDWRO_APPENDO_CREATEperm0666*FileFileerror
File.Read(b []byte) (n int, err error)
bb
bnerror

读取文件操作

执行结果:

字节数据: [72 101 108 108 111 32 119 111 114 108 100]
字符串数据: Hello world
所获取字节的长度: 11

Open1.txtfile11fileRead11os.Open("1.txt")os.OpenFile("1.txt", os.O_RDONLY, 0)

bufio.NewReader 和 Reader.ReadString

bufio.NewReaderReader.ReadString
NewReader(rd io.Reader) *ReaderReader4096
rdFile*ReaderReader
ReadString(delim byte) (string, error)delimEOF
delim

读取文件操作

1.txt 文件的内容为:

执行结果:

Hello World
Hello Golang
Hello Gopher

OpenFile1.txtfileNewReaderReaderReadString\nio.EOF

小结

osbufioosOpenOpenFileFileReadbufioNewReaderReaderReadString