Java替换(新增)JSON串里面的某个节点操作
作者:BugCounter
替换JSON串里面的某个节点
这里使用的是alibaba的fastjson,使用JSONObject解析替换,这里的key存在就会替换,不存在就新增
JSONObject object = JSONObject.parseObject(jsonString); object.put("name", "张三"); object.put("phone", "13512345678"); newJsonString = object.toJSONString();
jsonString是一个JSON串
需要替换子节点的目前没有做尝试
补充知识:读写json文件并新增或覆盖其中的数据节点
1.json转Map
Map map = JSON.parseObject(json); [使用fastjson]
2.Map转json
String json = JSON.toJSONString(map); [使用fastjson]
3.读json文件
File file = new File(filePath);
String json = FileUtils.readFileToString(file,"UTF-8"); [FileUtils来自commons-io工具类]
4.写json文件
File file = new File(filePath);
FileUtils.writeStringToFile(file, json, "UTF-8"); [FileUtils来自commons-io工具类]
5.新增json数据节点
使用map.put(key,value),其中key是要添加的key;
6.覆盖json数据节点
使用map.put(key,value)方法,其中key是要覆盖的key;
7.整体思路
使用commons-io的readFileToString方法读取json文件到内存中,使用JSON.parseObject把json转化为Map对象,使用put方法新增或覆盖json数据节点,然后使用JSON.toJSONString把Map对象转化为json,最后使用commons-io的writeStringToFile把更新以后的json串写入json文件;
以上这篇Java替换(新增)JSON串里面的某个节点操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。