当前位置: 首页 > 工具软件 > JSONParser > 使用案例 >

2.1、用JsonParser解析json树模型

夏昊
2023-12-01

解析json字符串可以像解析DOM一样,解析每一个节点。Gson的jar包中提供了JsonParser类,专门用于解析json字符串的,注意只是json节点的内容解析出来,并不像前两节把整个json字符串反序列化为一个对象。

    public static void main(String[] args) {
        String jsonString = "{\"id\":1, \"name\":\"lzj\", \"cars\":[\"audi\", \"baoma\", \"benci\"]}";
        JsonParser parser = new JsonParser();
        JsonElement jsonNode = parser.parse(jsonString);
        if (jsonNode.isJsonObject()) {
            JsonObject jsonObject = jsonNode.getAsJsonObject();
            JsonElement jsonElementId = jsonObject.get("id");
            int id = jsonElementId.getAsInt();
            System.out.println("id : " + id);

            JsonElement jsonElementName = jsonObject.get("name");
            String name = jsonElementName.getAsString();
            System.out.println("name : " + name);

            JsonElement jsonElementCars = jsonObject.get("cars");
            JsonArray arrays = jsonElementCars.getAsJsonArray();
            for(int i=0; i<arrays.size(); i++){
                JsonElement jsonElementArray = arrays.get(i);
                String car = jsonElementArray.getAsString();
                System.out.println("car" + i + " : " + car);
            }
        }
    }

运行程序,输出

id : 1
name : lzj
car0 : audi
car1 : baoma
car2 : benci
 类似资料: