gpt4 book ai didi

json - 来自 Golang 中 json 的结构图

转载 作者:IT王子 更新时间:2023-10-29 01:38:43 26 4
gpt4 key购买 nike

所以我正在尝试将 json 解析为一些结构,并且可以正常使用以下内容:

type train struct {
ID string `json:"id"`
Price float64 `json:"price,string"`
Distance float64 `json:"Distance,string"`
}

type Station struct {
ID int64 `json:"id,string"`
arrTrain []train`json:"arr"`
depTrain []train`json:"dep"`
}

但是,问题是我希望能够使用它们的 ID 轻松引用 arrTrain 和 depTrain 中的项目,因此我认为我需要更改 Station 结构以将 arrTrain 和 depTrain 作为 map ,ID 为 key 。这在解析 json 时是否可行,还是必须进行“后处理”?

编辑:正如其中一条评论所述,不幸的是我的 json 格式如下:

{
"id":1,
"arr": [
{"id":"one","price":"$10.1","Distance":"100km"},
{...}
],
"dep":[
{"id":"one","price":"$10.1","Distance":"100km"},
{...}
]
}

换句话说,ID 不在 json 对象之外,arrTrain 是列表。

最佳答案

是的,你可以这样定义站:

type Station struct {
ID int64 `json:"id,string"`
arrTrain map[string]train `json:"arr"`
depTrain map[string]train `json:"dep"`
}

你的 JSON 应该是这样的

{
"id":1,
"arr": {
"one":{"id":"one","price":"$10.1","Distance":"100km"},
"two":...
},
"dep":{
"one":{"id":"one","price":"$10.1","Distance":"100km"},
"two":...
}
}

关于json - 来自 Golang 中 json 的结构图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42820620/

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