如何存储一片字节片?
问题描述:
我想了解如何分别在一个切片中存储几个字节切片。正如下面所示,我希望存储结构存储在buf中找到的n的压缩结果的结果。如何存储一片字节片?
type storage struct
{
compressed []byte
}
func (s* storage) compress(n []byte) {
var buf bytes.Buffer
w := gzip.NewWriter(&buf)
w.Write(n)
w.Close()
store := buf.Bytes()
s.compressed = append(s.compressed, store)
}
答
在您的代码中compressed
是一段字节。如果你想存储一些字节,你需要一部分字节。因此,请将compressed
的类型更改为[][]byte
否则,如果它应全部追加到同一片上,请使用's.compressed = append(s.compressed,store ...)'。请注意最后一个参数后面的省略号。这会将'store'片断解包成一个单独的字节列表,每个字节都是一个单独的参数给append。 – jimt
谢谢。很高兴知道。我以为我真的尝试过,但我会再试一次:) – stian