如何使用无法在结构中捕获为`json`的动态密钥解组jSON:GOlang
How to Unmarshal jSON with dynamic key which can't be captured as a `json` in struct: GOlang
我定义了这个结构:
type X struct {
A string `json:"a_known_string"`
B string `json:"b_known_string"`
}
这个样本JSON:
jsnStr := [从文件中读入并打印出来确认]
是:
{
"any string" : {
"a_known_string" : "some value",
"b_known_string" : "another value"
}
}
如果只是结构,我可以:
var x X
err := json.Unmarshal(jsnStr, &x)
但我需要捕捉那个 'any string'。
请问我该怎么做?
使用地图:
var m map[string]X
err := json.Unmarshal([]byte(jsnStr), &m)
我定义了这个结构:
type X struct {
A string `json:"a_known_string"`
B string `json:"b_known_string"`
}
这个样本JSON:
jsnStr := [从文件中读入并打印出来确认]
是:
{
"any string" : {
"a_known_string" : "some value",
"b_known_string" : "another value"
}
}
如果只是结构,我可以:
var x X
err := json.Unmarshal(jsnStr, &x)
但我需要捕捉那个 'any string'。 请问我该怎么做?
使用地图:
var m map[string]X
err := json.Unmarshal([]byte(jsnStr), &m)