java - 将 Key 值添加到 GSON.toJSON 生成的 Json 字符串中

标签 java json gson

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

jsonResponse 返回:

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

我正在寻找的最终结果是将这个 JSON 字符串包装在另一个键中,例如

{
 "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\"}]"}

最佳答案

继续使用 GSON,如下所示:

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);

String tmp = new Gson().toJson(new MainObj());

关于java - 将 Key 值添加到 GSON.toJSON 生成的 Json 字符串中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36193326/

相关文章:

java - 添加新节点时使用堆栈来存储trap节点。为什么我会收到 EmptyStackException?

java - NetBeans IDE6.7 中的 session 类

java - 使用 Jackson/Java 来确保所有序列化到 JSON 都在单引号或双引号内分隔不受信任的数据以转义任何特殊字符?

javascript - 类型错误 : 'application/json' is not a valid JavaScript MIME type

java - 将无符号字节转换为有符号字节

java - 模拟正在测试的同一类中的 void 方法

php - 如何获得更多的变量值?

android - 无法解析 : com. google.code.gson :gson:2. 3.1

java - java中如何使用Gson读取Json

java - Gson - 尝试将 json 字符串转换为自定义对象