【发布时间】:2018-01-03 04:59:29
【问题描述】:
有一个导出文件的库,但我想捕获文件的内容。我想将写入器传递给库并能够读取写入器写入文件的内容。最终我想扩充库以跳过编写此文件。 这对 io.Copy 或 io.Pipe 可行吗?
库代码创建一个 *File 并将此句柄用作 io.Writer。 我尝试使用 io.Copy 但只读取了 0 个字节。
func TestFileCopy(t *testing.T) {
codeFile, err := os.Create("test.txt")
if err != nil {
t.Error(err)
}
defer codeFile.Close()
codeFile.WriteString("Hello World")
n, err := io.Copy(os.Stdout, codeFile)
if err != nil {
t.Error(err)
}
log.Println(n, "bytes")
}
【问题讨论】: