gpt4 book ai didi

json - 嵌套的 JSON golang 映射

转载 作者:数据小太阳 更新时间:2023-10-29 03:40:52 25 4
gpt4 key购买 nike

我找不到和我一样的问题。

我有以下 JSON:

{
result: "true",
data: [
{
randomName: {
val: 2,
secval: 0.142412,
thirdval: 0.5235325,
},
secRandomName: {
val: 8,
secval: 0.152512,
thirdval: 0.6574,
},
thiRandomName: {
val: 6,
secval: 0.4121,
thirdval: 0.2123
},
}
]
}`

如何在 golang 中创建一个与 JSON 示例一起工作的类型,我尝试过这样的事情:

type TheData struct {
Result string `json:"result"`
Data map[string]DataInfo `json:"data"`
}

type DataInfo struct {
Value int `json:"val"`
SecondValue float32 `json:"secval"`
ThirdValue float32 `json:"thirdval"`
}

但这是错误的。

附言对不起我的英语,我希望你能理解。谢谢。

最佳答案

这真的能代表您的数据吗?它不是有效的 JSON。请参阅 json.org 中的说明.特别是您需要在字符串周围加上引号,并且逗号不应出现在对象或数组的最后一个成员之后。奇怪的是 "true" 是一个字符串而不是 bool 值。由于这显然不是数据的复制/粘贴,您确定方括号和花括号正确吗?这些对答案很重要。

假设你做对了......从这些行:

data: [
{
randomName: {

我们可以看出 data 是一个对象数组。如果您指的是方括号,则该数组未在您的数据模型中表示是错误的。更改您的数据模型以包含一个 slice 来捕获 JSON 数组:

type TheData struct {
Result string `json:"result"`
Data []map[string]DataInfo `json:"data"`
}

关于json - 嵌套的 JSON golang 映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51585362/

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