[英]Map of Struct from json in Golang
所以我正在嘗試將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作為以ID為鍵的映射。 解析json時是否有可能,還是必須對其進行“后處理”?
編輯:如評論之一所述,不幸的是我的json是以下形式:
{
"id":1,
"arr": [
{"id":"one","price":"$10.1","Distance":"100km"},
{...}
],
"dep":[
{"id":"one","price":"$10.1","Distance":"100km"},
{...}
]
}
換句話說,該ID不在json對象的外部,並且arrTrain是list。
是的,您可以這樣定義樁號:
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":...
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.