Go io包中的大多数输出方法都会返回(int, error),例如io.Writer的Write([]byte)方法和io.WriteString(io.Writer, string)函数。但是,一些输出方法(例如io.WriterTo的WriteTo方法)会返回(int64, error)。这使得不方便实现WriteTo在以下方面Write或WriteString不存储的中间值,并输入从将其转换int到int64。这种差异的原因是什么?
io
(int, error)
io.Writer
Write([]byte)
io.WriteString(io.Writer, string)
io.WriterTo
WriteTo
(int64, error)
Write
WriteString
int
int64
WriteTo复制的数据可能超过int32字节。
使用io.Reader和io.Writer接口,数据量受给定切片的大小限制,该切片的长度受int当前体系结构的限制。
io.Reader