gpt4 book ai didi

json - Go map[int]struct JSON 编码(marshal)

转载 作者:IT王子 更新时间:2023-10-29 01:55:48 27 4
gpt4 key购买 nike

尝试将 map[int] 解析为 go 中用户定义的结构:

这是数据模式。

type Recommendation struct {
Book int `json:"book"`
Score float64 `json:"score"`
}

这是 json 编码(marshal)处理:

ureco := make(map[int]data.Recommendation)
ureco, _ = reco.UserRunner()

json, _ := json.Marshal(ureco)
fmt.Println(json)

其中 reco.UserRunner() 返回适当的结构类型。

这会打印一个空的 json 对象:

[]

更新:

错误信息:

json: unsupported type: map[int]data.Recommendation

那么我如何对结构映射进行 json 处理呢?还是有替代方法?

最佳答案

如果您只需要编码它,您可以遍历您的 map 并将其变成一个 slice 。

slc := make([]data.Recommendation)
for _, val := range ureco {
slc = append(out, val)
}
json, _ := json.Marshal(slc)

您可以在此处查看带有 map[int]string 的简单示例:http://play.golang.org/

关于json - Go map[int]struct JSON 编码(marshal),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22874022/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com