• gson解析复杂的json数据


    1.什么是json

    JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于 ECMAScript (w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

     

    2.下载gson包地址

    https://pan.baidu.com/s/1o8r8DBG

    3.json数据xu.json文件数据如下:


    "crawler" : "mobile", 
    "crawler_result" : {
    "fee" : [
    {
    "package" : "0.61", 
    "call" : "17612121212", 
    "netflow" : "0.10", 
    "total" : "0.71"
    }
    ], 
    "sms" : [
    {
    "send_type" : "接收", 
    "fee" : "0.00", 
    "mobile" : "18615162212", 
    "send_time" : "2017-07-31 16:20:26"
    }
    ], 
    "call" : [
    {
    "mobile" : "15901357111", 
    "communicati" : "国内", 
    "call_time" : "2017-08-07 16:33:08", 
    "location" : "北京市", 
    "duration" : "146", 
    "call_type" : "主叫"
    }
    ]
    }
    }

     

     

    4,解析代码如下

     

    JsonParser parser=new JsonParser(); 
    JsonObject json=(JsonObject) parser.parse(new FileReader(“xu.json”));
    JsonObject object = json.get("crawler_result").getAsJsonObject();
    JsonArray array = object.get(“call”).getAsJsonArray();//可以获取call节点的所有数据保存为数组然后解析数组

    for(int i=0;i<array.size();i++){
    JsonObject jsonObject = array.get(i).getAsJsonObject();

    String phone=jsonObject.get("mobile").getAsString();//获取手机号

    }//不管json数据多复杂都可以一级一级的解析,而且利用gson解析json应该是最简单的方法。

    5.还有人解析json的时候是利用gson把json转换成对象,需要写bean个人认为对复杂的json来说这个比较麻烦。我比较推崇上面这个方法。

  • 相关阅读:
    Unable to load dbxmss.dll (ErrorCode 16). It may be missing from the system Path
    同一网内机器无法连通解决一例
    Day.24
    Day.24
    Day.23
    Day.22
    Day.23
    Day.21
    Day.22
    Day.01-Day.20
  • 原文地址:https://www.cnblogs.com/liwei09k1/p/7716649.html
Copyright © 2020-2023  润新知