The Go Programming Language
› http://golang.org/
› Go Playground
Go Projects
› Revel Web Framework
bigpigeon

go 有好用的 io 库吗

  •  
  •   bigpigeon · Apr 14, 2021 · 3561 views
    This topic created in 2039 days ago, the information mentioned may be changed or developed.

    go 的 io.Reader/Writer 用来传输流文件非常方便

    但官方的 Reader/Writer 实现都太简单了,不够实用

    有没有一些好用的第三方库

    我想到几个比较实用的函数

    1. 带 Seeker 的 Reader

    就是 Reader 允许 Seeker 操作,可以返回头或者尾

    1. 一读变多读

    size 就是缓冲区大小,num 就是返回值返回的 reader 数

    e.g NewMultiReader(io.Reader, size, num int) []io.Reader

    6 replies  •  2021-04-15 10:27:50 +08:00
    SingeeKing
    SingeeKing
    Apr 14, 2021
    1
    第一个需求 Go 自带的 bufio 就可以,我也封装了一个 https://github.com/ImSingee/sio/blob/master/reader.go
    Mohanson
    Mohanson
    Apr 14, 2021
    2
    第二个需求正解是用 io.TeeReader()
    guonaihong
    guonaihong
    Apr 14, 2021
    3
    楼上两位已经把别人要回答的都回答过了。
    killerirving
    killerirving
    Apr 15, 2021
    4
    有需求先搜索
    bigpigeon
    bigpigeon
    OP
    Apr 15, 2021
    5
    @SingeeKing bufio 只能缓存 Reader 内容但不能,seek 到 Reader 头的功能
    bigpigeon
    bigpigeon
    OP
    Apr 15, 2021
    6
    @Mohanson 这个用来做 HashSum 不错
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4019 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 09:37 · PVG 17:37 · LAX 01:37 · JFK 04:37
    ♥ Do have faith in what you're doing.