我试图将嵌套数组项中的对象编辑"field2": "desc 2"
到"field2": "xxxx"
json下面:
{
"item1": 123,
"item2": "desc 1",
"item3": [
{
"field1": "desc 1",
"field2": "desc 2"
}
]
}
我尝试了这个解决方案
root = objectMapper.readTree(new File(filePath))
((ObjectNode) root).put("field2", "desc xxxx");
输出为:
{
"item1": 123,
"item2": "desc 1",
"item3": [
{
"field1": "desc 1",
"field2": "desc 2"
}
],
"field2": "desc xxxx"
}
使用ObjectMapper和JsonNode更新json(复杂的json(json数组和对象) *
String json= "{\n" +
" \"item1\": 123,\n" +
" \"item2\": \"desc 1\",\n" +
" \"item3\": [{\"field1\": \"desc 1\", \"field2\": \"desc 2\"}]\n" +
"}";
try {
JsonNode node;
ObjectMapper mapper = new ObjectMapper();
node = mapper.readTree(json);
node.get("item3").forEach(obj -> {
((ObjectNode)obj).put("field2", "xxxxxxxxxxxxxx");
});
System.out.println(node);
} catch (JsonMappingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (JsonProcessingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
{"item1":123,"item2":"desc 1","item3":[{"field1":"desc 1","field2":"xxxxxxxxxxxxxx"}]}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句