为了账号安全,请及时绑定邮箱和手机立即绑定

将 bufio.Scanner 的阅读器包装在 bufio.Reader 中有什么好处吗?

将 bufio.Scanner 的阅读器包装在 bufio.Reader 中有什么好处吗?

Go
心有法竹 2021-09-09 15:01:46
我正在使用bufio.Scanner,我不确定是否应该给它一个由bufio.Reader.即,哪里f是os.File,我应该:scanner := bufio.NewScanner(f)或者scanner := bufio.NewScanner(bufio.NewReader(f))
查看完整描述

1 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

从该scan.go源它看起来并不像你需要传递一个*bufio.Reader:它有自己的缓存,默认为4K作为bufio.Reader的缓冲区做。


// NewScanner returns a new Scanner to read from r.

// The split function defaults to ScanLines.

func NewScanner(r io.Reader) *Scanner {

    return &Scanner{

        r:            r,

        split:        ScanLines,

        maxTokenSize: MaxScanTokenSize,

        buf:          make([]byte, 4096), // Plausible starting size; needn't be large.

    }

}


查看完整回答
反对 回复 2021-09-09
  • 1 回答
  • 0 关注
  • 191 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信