我想将 JSON blob 解码为 Go 结构,对其进行操作,然后将其编码回 JSON。但是,JSON 中有与我的结构无关的动态字段,我想在序列化回 JSON 时维护它们。
例如:
{ "name": "Joe Smith",
"age": 42,
"phone": "614-555-1212",
"debug": True,
"codeword": "wolf" }
type Person struct {
Name string
Age uint
Phone string
}
var p Person
json.Unmarshal(data, &p)
// Happy birthday
p.Age++
data, _ = json.Marshal(p)
// Any way to maintain the "debug" and "codeword" fields -- which might not
// be known ahead of time?
我知道一种可能性是将所有内容解码为一个map[string]interface{}男孩,当你这样做时,事情会变得丑陋。
有什么办法可以两全其美吗?
慕桂英4014372
相关分类