无法在 Golang 中解析 JSON 数组
Unable to parse JSON array in Golang
我很难解析以下 JSON 数组。
// JSON Array
[
{
"ShaId": "adf56a4d",
"Regions": [
{
"Name": "us-east-1a"
}
]
}
.... more such
]
Link 去游乐场 :- https://play.golang.org/p/D4VrX3uoE8
我哪里出错了?
这是你原来的JSON输入:
content := `{"ShaId": "adf56a4d", "Regions": [{"Name": "us-east-1a"}]}`
不是数组,改成:
content := `[{"ShaId": "adf56a4d", "Regions": [{"Name": "us-east-1a"}]}]`
有了这个,结果:
Results: []main.ShaInfo{main.ShaInfo{ShaId:"adf56a4d",
Regions:main.Region{struct { Name string }{Name:"us-east-1a"}}}}
注:
如果您输入的不是数组,则不要尝试从中解析数组(切片),只需一个 ShaInfo
。如果您不t/can不修改输入,这也有效:
var data ShaInfo
content := `{"ShaId": "adf56a4d", "Regions": [{"Name": "us-east-1a"}]}`
json.Unmarshal([]byte(content), &data)
输出:
Results: main.ShaInfo{ShaId:"adf56a4d",
Regions:main.Region{struct { Name string }{Name:"us-east-1a"}}}
我很难解析以下 JSON 数组。
// JSON Array
[
{
"ShaId": "adf56a4d",
"Regions": [
{
"Name": "us-east-1a"
}
]
}
.... more such
]
Link 去游乐场 :- https://play.golang.org/p/D4VrX3uoE8
我哪里出错了?
这是你原来的JSON输入:
content := `{"ShaId": "adf56a4d", "Regions": [{"Name": "us-east-1a"}]}`
不是数组,改成:
content := `[{"ShaId": "adf56a4d", "Regions": [{"Name": "us-east-1a"}]}]`
有了这个,结果:
Results: []main.ShaInfo{main.ShaInfo{ShaId:"adf56a4d",
Regions:main.Region{struct { Name string }{Name:"us-east-1a"}}}}
注:
如果您输入的不是数组,则不要尝试从中解析数组(切片),只需一个 ShaInfo
。如果您不t/can不修改输入,这也有效:
var data ShaInfo
content := `{"ShaId": "adf56a4d", "Regions": [{"Name": "us-east-1a"}]}`
json.Unmarshal([]byte(content), &data)
输出:
Results: main.ShaInfo{ShaId:"adf56a4d",
Regions:main.Region{struct { Name string }{Name:"us-east-1a"}}}