一尘不染

如何使用无法在结构中捕获为动态JSON的动态密钥解组jSON:GOlang [重复]

go

我定义了这个结构:

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)

但是我需要捕获“任何字符串”。我该怎么做?


阅读 194

收藏
2020-07-02

共1个答案

一尘不染

使用地图:

var m map[string]X
err := json.Unmarshal([]byte(jsnStr), &m)

游乐场的例子

2020-07-02