【发布时间】:2018-04-03 01:57:56
【问题描述】:
我正在关注 golang 之旅,我被要求:
实现一个实现 io.Reader 并从 io.Reader 读取的 rot13Reader,通过将 ROT13 替换密码应用于所有字母字符来修改流。
我首先实现了 *rot13Reader 的方法
type rot13Reader struct {
r io.Reader
}
func (r *rot13Reader) Read(p []byte) (n int, e error){
}
但是我无法理解这种 Read 方法。
p 是否包含所有读取的字节?因此我应该做的就是遍历它们并应用 ROT13 替换?
我知道它应该在文件末尾返回读取的字节数和 EOF 错误,但是我不确定何时以及如何调用此方法。那么回到我最初的问题,p 是否包含所有读取的数据?如果没有那我怎么能得到它?
【问题讨论】: