【问题标题】:Golang create multireader of bytes.Buffer arrayGolang创建bytes.Buffer数组的multireader
【发布时间】:2014-12-22 03:30:01
【问题描述】:

我需要创建切片的 MultiReader []*bytes.Buffer
buffer_slice := ... (type []*bytes.Buffer)
当我写io.MultiReader(buffer_slice)

我收到错误:
cannot use buffer_slice (type []*bytes.Buffer) as type io.Reader in argument to io.MultiReader: []*bytes.Buffer does not implement io.Reader (missing Read method).

但是函数签名MultiReader(readers ...Reader) Reader

我明白发送数组没有意义,实际问题:除了琐碎的循环,没有更多的选择了吗?

附:对不起我的英语不好。

【问题讨论】:

标签: arrays io go


【解决方案1】:

您的切片应输入[]io.Reader

b1 := &bytes.Buffer{}
b2 := &bytes.Buffer{}
buffers := []io.Reader{b1, b2}

multi := io.MultiReader(buffers...)

【讨论】:

  • 感谢您的建议,现在一切都很好!
  • @KonstantinSmirnov 我很高兴能帮上忙
猜你喜欢
  • 2018-12-27
  • 2016-01-12
  • 2019-06-25
  • 1970-01-01
  • 2019-11-22
  • 1970-01-01
  • 1970-01-01
  • 2018-12-13
  • 1970-01-01
相关资源
最近更新 更多