在我的Go程序中,我使用gob编码[]字节数据
buf := new(bytes.Buffer)
enc := gob.NewEncoder(buf)
//data is []byte
buf.Reset()
enc.Encode(data)
但是当我尝试解码时,' gob解码器尝试解码为非指针'
buf := new(bytes.Buffer)
d := gob.NewDecoder(buf)
d.Decode(data)
log.Printf("%s", d)
答案 0 :(得分:2)
Gob要求你传递指针进行解码。
在你的情况下,你会这样做:
d.Decode(&data)
原因是,它可能需要修改切片(即:使其更大,以适应解码的数组)