-2

我有多个不同格式的 JSON 文件。它们都由一个包含地图的数组组成。然而,这些地图具有不同的结构。

一个.json

[
   {
       "a": "b", 
       "c": ["d", "e"] 
   } 
]

b.json

[
   {
       "f": ["g", "h"], 
       "i": {"j": "k"} 
   } 
]

内部映射的 Thr 结构无关紧要。我只想为它们添加一个新的键值对,所以它们看起来像这样 a.json

[
   {
       "new_key": "new_value", 
       "a": "b", 
       "c": ["d", "e"] 
   } 
]

b.json

[
   {
       "new_key": "new_value",
       "f": ["g", "h"], 
       "i": {"j": "k"} 
   } 
]
4

1 回答 1

1

您可以使用一片地图:

var data []map[string]interface{}

您可以解组:

json.Unmarshal(jsonData,&data)

然后添加键:

for i:=range data {
   data[i]["new_key"]="newValue"
}

当然,你必须做必要的错误检查,并确保data[i]它不是 nil。

于 2021-05-20T02:21:24.873 回答