Ale*_*xey 4 go
我需要一些解组方面的帮助。我有这个示例代码:
package main
import (
"encoding/json"
"fmt"
)
type Obj struct {
Id string `json:"id"`
Data []byte `json:"data"`
}
func main() {
byt := []byte(`{"id":"someID","data":["str1","str2"]}`)
var obj Obj
if err := json.Unmarshal(byt, &obj); err != nil {
panic(err)
}
fmt.Println(obj)
}
我在这里尝试做的 - 将字节转换为结构,其中一个字段的类型是[]byte。我得到的错误:
恐慌:json:无法将字符串解组为 uint8 类型的 Go 结构字段 Obj.data
这可能是因为解析器已经看到“data”字段已经是一个切片并尝试将“str1”表示为一些字符字节码(类型 uint8?)。
如何将整个数据值存储为一个字节数组?因为我想稍后将值解组到字符串切片中。我没有在 struct 中包含一段字符串,因为这种类型可以改变(字符串数组、int、字符串等),我希望这是通用的。