Java 操作 Json

时间:2023-03-09 01:34:24
Java 操作 Json

1. 使用Gson构建Json

初始化

JsonObject jsonObject = new JsonObject();

string 转换为json

JsonObject jsonObject = new JsonParser().parse(String).getAsJsonObject();

添加属性

jsonObject.addProperty("name",布尔/字符/数字/字符串);

添加 子级 Json

jsonObject.add("json_1", jsonObject);

获取json 元素属性

jsonObject.get("name").getAsString();

使用 Long.parseLong Integer.parseInt

获取json 子级Json

jsonObject.getAsJsonObject("json_1");

数组

JsonArray jsonArray = new JsonArray();

数组操作 添加 获取

jsonArray.add(element);
jsonArray.get(i); //add 和 get 相关函数

遍历数组

for (int i = 0; i < jsonArray.size(); i++) {
JsonElement jsonElement = (JsonElement) jsonArray.get(i);
//取int
jsonElement.getAsInt();
// 等等 其他类型 get
}

2. 使用fastjson 操作Json

初始化

JSONObject jsonObject = new JSONObject();

string 转换为json

JSONObject jsonObject = JSONObject.parseObject(String);

object 转换为string

JSON.toJSONString(object)

添加

jsonObject.put("name",Object);

获取子级JSONObject

jsonObj.getJSONObject(“name”);

获取子级JSONArray

jsonObj.getJSONArray("name");

json数组增加 获取

jsonArray.add
jsonArray.get

json数组遍历操作

for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonObject = (JSONObject) jsonArray.get(i);
//取int
jsonObject.getIntValue("name");
//取string
jsonObject.getString("name");
  // 等等 其他类型 get
}