美文网首页
go 的IO库该如何选择

go 的IO库该如何选择

作者: wayyyy | 来源:发表于2022-12-23 22:00 被阅读0次

    全文转载自:go 的IO库该如何选择

    Go语言里使用io.Reader和io.Writer两个 interface 来抽象I/O,他们的定义如下。

    type Reader interface {
       Read(p []byte) (n int, err error)
    }
    
    type Writer interface {
       Write(p []byte) (n int, err error)
    }
    

    io.Reader 接口代表一个可以从中读取字节流的实体,而io.Writer则代表一个可以向其写入字节流的实体。

    io.Reader/Writer 常用的几种实现
    • net.Conn: 表示网络连接。
    • os.Stdin, os.Stdout, os.Stderr: 标准输入、输出和错误。
    • os.File: 网络,标准输入输出,文件的流读取。
    • strings.Reader: 字符串抽象成 io.Reader 的实现。
    • bytes.Reader: []byte抽象成 io.Reader 的实现。
    • bytes.Buffer: []byte抽象成 io.Reader 和 io.Writer 的实现。
    • bufio.Reader/Writer: 带缓冲的流读取和写入(比如按行读写)。

    相关文章

      网友评论

          本文标题:go 的IO库该如何选择

          本文链接:https://www.haomeiwen.com/subject/uxdiqdtx.html