java - 使用 Gson 添加现有的 json 字符串

标签 java json gson

我有一个包含任意 json 的字符串对象。我想将它包装在另一个 json 对象中,如下所示:

{
   version: 1,
   content: >>arbitrary_json_string_object<<
}

我如何才能可靠地将我的 json 字符串作为属性添加到它而无需手动构建它(即避免繁琐的字符串连接)?

class Wrapper {
   int version = 1;
}

gson.toJson(new Wrapper())
// Then what?

请注意,添加的 json 应该被转义,而是作为有效的 json 实体作为包装器的一部分,如下所示:

{
   version: 1,
   content: ["the content", {name:"from the String"}, "object"]
}

给予

String arbitraryJson = "[\"the content\", {name:\"from the String\"}, \"object\"]";

最佳答案

对于那些在这个话题上冒险的人,请考虑 this .

A a = getYourAInstanceHere();
Gson gson = new Gson();
JsonElement jsonElement = gson.toJsonTree(a);
jsonElement.getAsJsonObject().addProperty("url_to_user", url);
return gson.toJson(jsonElement);

关于java - 使用 Gson 添加现有的 json 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20522550/

相关文章:

java - 如何使用gson解析日期和时间?

java - hibernate 批处理 : Stateless Session VS Regular Session Native Query

java - 如何将 Android 应用程序中的图像存储到 MySQL

java - Spring 返回 String 作为 JSON,行为改变

json - 如何在 Azure Notebook 中将 Key Vault 值的 [已编辑] 解析为 json 字符串

java - GSON 无法使用字符串空间解析 JSON

java - 为什么我在使用 Gson.asString 时收到 java.lang.UnsupportedOperationException?

java - 即使在成功加载所需的目标文件后,在加载 JNI 依赖项时也会在 Java 中获取 UnsatisfiedLinkError( undefined symbol )

java - 如何从字符串数组列表中随机选择

java - 尝试使用谷歌地图 API v2 获取经度和纬度时显示错误