前言

Goosbufio

File.Write、File.WriteString、File.WriteAt

File.Write(b []byte) (n int, err error)

直接操作磁盘往文件里写入数据,写入单位为字节。

bnerr
File.WriteString(s string) (n int, err error)

直接操作磁盘往指定文件里写入数据,写入单位为字符串。

snerr
File.WriteAt(b []byte, off int64) (n int, err error)
off
boffnerr

文件写入操作

test.txtos.O_CREATE
WriteHello World\n
WriteStringHello Golang

Hello World
Hello Golang

WriteAt0xxxxxxxxxxx0

xxxxxxxxxxx
Hello Golang

File.Seek

File.Seek(offset int64, whence int)
offset
offsetwhence012

应用

test.txtos.O_CREATEWriteStringG0lang0oSeeko0o0

bufio.NewWriter、Writer.WriteString、Writer.Flush

bufioWriter4096
NewWriter(w io.Writer) *Writer
4096Writer
wWriterFile*WriterWriter
Writer.WriteString(s string) (int, error)

往缓冲区写入内容的方法。

s
Writer.Flush() error

将所有的缓存数据写入磁盘。

返回值为数据写入磁盘的过程中产生的错误。

文件写入操作

test.txtos.O_CREATENewWriterWriterwriterwriterWriteStringFlush

小结

File.WriteFile.WriteStringFile.WriteAtFile.Seekbufio.NewWriterWriter.WriteStringWriter.Flush
您可能感兴趣的文章: