将Key值添加到从GSON.toJSON生成的Json String

时间:2016-03-24 04:31:02

标签: java json gson

  String jsonResponse=Utils.getGsonInstance().toJson(Object);

jsonResponse返回:

[
   {
    "Key":"1",
    "Code": "11",
   },
   {    
    "key":"2",
    "code": "22",
    }
]

我正在寻找的最终结果是将这个JSON-String包装在另一个Key E.g中。

{
 "MainObj": 
  [
   {
    "Key":"1",
    "Code": "11",
   },
   {    
    "key":"2",
    "code": "22",
   }
 ]
}

有没有办法使用GSON Api实现这一目标?

我试过了::

    JSONObject jsonObject = new JSONObject(); 
    jsonObject.put("MainObj",jsonResponse);

我得到的输出是:

{"MainObj": "[{\"Key\":\"1",\"Code\":\"11\"},   {\"Key\":\"2",\"Code\":\"22\"}]"}

1 个答案:

答案 0 :(得分:1)

继续使用GSON:

public OrdersGUI()
{
  //code for adding SWING components to panels and JDialog.

}

并改变

public class MainObj {
    @SerializedName("MainObj")
    public List<Key> Main;

    public class Key {
        @SerializedName("Key")
        public String Key;

        @SerializedName("code")
        public String Code;
    }
}

通过

JSONObject jsonObject = new JSONObject(); 
jsonObject.put("MainObj",jsonResponse);