我想得到一个代表这样一个 json 的字符串:
{ "votes": { "option_A": "3" } }
并在其中包含一个“计数”键,因此它的结尾如下:
{ "votes": { "option_A": "3" }, "count": "1" }
这就是为什么我打算将它转换为 json 以便我可以添加计数然后
再次使它成为一个字符串。 问题是我不知道它的结构
JSON,所以我不能使用 json.Unmarshal(in, &myStruct)
因为那个结构
变化。我该怎么做?
最佳答案
package main
import "encoding/json"
func main() {
in := []byte(`{ "votes": { "option_A": "3" } }`)
var raw map[string]interface{}
if err := json.Unmarshal(in, &raw); err != nil {
panic(err)
}
raw["count"] = 1
out, err := json.Marshal(raw)
if err != nil {
panic(err)
}
println(string(out))
}
关于json - 解码具有未知结构的 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40429296/