替换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文件;