java:删除双引号
我有以下json:
{"test":"example"}
我使用了来自更快的XML Jackson的以下代码
JsonParser jp = factory.createParser("{\"test\":\"example\"}");
json = mapper.readTree(jp);
System.out.println(json.get("test").toString());
它输出:
"example"
Jackson中是否有删除双引号的设置
# 1 楼答案
嗯,当你
.get("test")
得到的是一个JsonNode
,而它恰好是一个TextNode
;当.toString()
它将返回该TextNode
的字符串表示形式,这就是您获得该结果的原因你想要的是:
它将返回JSON字符串本身的实际内容(所有内容都未被替换,以此类推)
请注意,如果
JsonNode
不是aTextNode
,这将返回null# 2 楼答案
jsonValue.get("value").isString().stringValue()
在调用单行方法之前还要检查null
# 3 楼答案
简单的泛型三元组使用不带引号的文本,否则保持节点完整