问题描述
我尝试转换以下形式的 JSON:
run()
...进入:
{
"name" : "John","value" : [ "age" : "25"]
}
但是我找不到办法做到这一点。有什么建议吗?
解决方法
一种解决方案可能如下所示:
parsed := map[string]interface{}{}
_ = json.Unmarshal([]byte(unparsed),&parsed)
data,_ := json.Marshal(map[string]interface{}{
parsed["name"].(string): parsed["value"],})
查看此 Playground 以查看代码工作:https://play.golang.org/p/1JFxBE6dFzp
,如果你想要年龄数组,那么使用
{
"name": "John","value": [
{
"age": "25"
}
]
}
else 使用(更合乎逻辑)
{
"name": "John","value": {
"age": "25"
}
}