java - 将有效或无效的 JSON 转换为字符串的好方法是什么?

标签 java json jackson escaping

我有一个获取 JSON 输入的服务,但有时也会获取无效的 JSON 内容。我无法控制这种行为。输入可以是

{"key":{"k1":"v1"},"key2":"value2"}

{"key":{"k1":"v1"},"Random String"}

我的想法是将整个事情包装成一个有效的 JSON,如下所示

{"id":"some id", "raw_data":"the above input as string"}

我知道我可以转义所有引号并将其视为字符串,但是是否有更简洁的方法将 JSON 转换为转义字符串?

FWIW,我正在使用 Jackson 进行解析和处理。

编辑:JSON 架构事先并不明确,并且可能会随着不同的输入而变化。

最佳答案

I know I can escape all quotes and treat it like a string, but is there a cleaner way to convert JSON to escaped string?

只需创建一个具有 raw_data 属性的类,使用您收到的 JSON(正确或不正确)设置此属性,然后让 Jackson 对其进行序列化(并注意使其成为正确的 JSON)。

关于java - 将有效或无效的 JSON 转换为字符串的好方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45068618/

相关文章:

Java断言自动化测试中没有两个元素是相同的

java - Mongodb 查询列表<Map<String, Map<String, String>>>

java - 如何仅包含要由 Jackson 序列化的对象的某些属性和字段?

java - 使用 Jackson ObjectMapper 进行序列化时出现 ClassCastException - java.lang.object 作为 LinkedHashset 中使用的基础 HashMap 中的值

java - 如何检查字符串是否与字符串数组匹配

java - 如何在java中精确复制图像?

javascript - fetch() 后出现 404 错误

javascript - 使用Python解析decodeURIComponent JSON字符串

java - 使用 Jackson 在 Java 中使用不同的 POJO 反序列化 JSON 数组

java - 即使存在默认构造函数,也无法从对象值反序列化(没有基于委托(delegate)或属性的创建者)