我需要解析并从 json 文件中的字段中获取值。
[{"id": 27}, {"id": 0, "label": "Label 0"}, null, {"id": 93}, {"id": 85}, {"id": 54}, null, {"id": 46, "label": "Label 46"}]}}
虽然我可以在单个级别上工作,但我不知道如何在这里迭代级别。我尝试在谷歌,各种帮助网站甚至堆栈溢出中寻找答案。我找不到任何可以帮助我使用多级 json 字节数组的示例。希望有人能引导我理解并努力。提前致谢
只需将 JSON 解析为一个结构数组:
package main
import (
"encoding/json"
"fmt"
)
type Item struct {
Id int
Label string
}
func main() {
data := []byte(`[{"id": 27}, {"id": 0, "label": "Label 0"}, null, {"id": 93}, {"id": 85}, {"id": 54}, null, {"id": 46, "label": "Label 46"}]`)
var val []*Item
if err := json.Unmarshal(data, &val); err != nil {
fmt.Printf("Error: %sn", val)
return
}
for _, it := range val {
fmt.Printf("%#vn", it)
}
}
我希望这有所帮助。