GO语言"io"包中"CopyBuffer"函数的用法及代码示例。
用法:
func CopyBuffer(dst Writer, src Reader, buf []byte)(written int64, err error)
CopyBuffer 与 Copy 相同,只是它通过提供的缓冲区(如果需要)进行暂存,而不是分配临时缓冲区。如果 buf 为 nil,则分配一个;否则,如果它的长度为零,CopyBuffer 会发生Panics。
如果 src 实现 WriterTo 或 dst 实现 ReaderFrom,则不会使用 buf 执行复制。
例子:
package main
import (
"io"
"log"
"os"
"strings"
)
func main() {
r1 := strings.NewReader("first reader\n")
r2 := strings.NewReader("second reader\n")
buf := make([]byte, 8)
// buf is used here...
if _, err := io.CopyBuffer(os.Stdout, r1, buf); err != nil {
log.Fatal(err)
}
// ... reused here also. No need to allocate an extra buffer.
if _, err := io.CopyBuffer(os.Stdout, r2, buf); err != nil {
log.Fatal(err)
}
}
输出:
first reader second reader
相关用法
- GO CopyN用法及代码示例
- GO Copysign用法及代码示例
- GO Copy用法及代码示例
- GO ContainsRune用法及代码示例
- GO Compare用法及代码示例
- GO Cosh用法及代码示例
- GO Config用法及代码示例
- GO Count用法及代码示例
- GO ContainsAny用法及代码示例
- GO Cos用法及代码示例
- GO Conn.ExecContext用法及代码示例
- GO Command用法及代码示例
- GO Contains用法及代码示例
- GO CommandContext用法及代码示例
- GO CommentMap用法及代码示例
- GO Chmod用法及代码示例
- GO Cmd.Start用法及代码示例
- GO CanBackquote用法及代码示例
- GO CreateTemp用法及代码示例
- GO Cut用法及代码示例
注:本文由纯净天空筛选整理自golang.google.cn大神的英文原创作品 CopyBuffer。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。