我有以下数据
{
"cars": {
"toyota": [
"sedan",
"pickup"
],
"honda": [
"sedan",
"couple",
"pickup"
]
....
}
}
该列表可能会继续增长。我试图找出适当的结构来存储数据并返回到http响应编写器。
我拥有的结构。
type Autos struct {
Cars struct {
Toyota []string `json:"toyota"`
Honda []string `json:"honda"`
} `json:"cars"`
}
但是上面的结构已经预定义了“丰田”“本田”
我正在寻找一种仅使用一个或两个结构表示数据结构的方法。提前致谢。
你可以做:
type Autos struct {
Cars map[string][]string `json:"cars"`
}
这是一个完整的工作示例,其中显示“ coupe”:
package main
import (
"encoding/json"
)
type Autos struct {
Cars map[string][]string `json:"cars"`
}
func main() {
x := `{
"cars": {
"toyota": [
"sedan",
"pickup"
],
"honda": [
"sedan",
"coupe",
"pickup"
]
}
}`
var a Autos
err := json.Unmarshal([]byte(x), &a)
if err != nil {
panic(err)
}
println(a.Cars["honda"][1])
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句