使用动态键进行 JSON 解组
使用无法作为结构体中的静态字段捕获的动态键解组 JSON 可以通过以下方式实现去使用map.
示例:
考虑以下 JSON 数据:
{ "any string" : { "a_known_string" : "some value", "b_known_string" : "another value" } }
以及结构体:
type X struct { A string `json:"a_known_string"` B string `json:"b_known_string"` }
解决方案:
要捕获动态键以及已知值,请使用映射而不是结构体:
import "encoding/json" var m map[string]X err := json.Unmarshal([]byte(jsonStr), &m) if err != nil { // Handle error } // Access the data using the dynamic key dynamicKeyData := m["any string"]
在这种情况下,map[string]X 类型允许捕获动态键“任何字符串”以及 X 中的已知值结构。
以上是如何在 Go 中使用动态键解组 JSON?的详细内容。更多信息请关注PHP中文网其他相关文章!