數(shù)據(jù)解析


Json解析

  1. 概念:輕量級的數(shù)據(jù)交換格式
  2. 特點:
    • 本質是具有特定格式的字符串
    • JSON完全獨立與編程語言
    • JSON比XML數(shù)據(jù)傳輸?shù)挠行愿吆芏唷?/li>

數(shù)據(jù)格式:

  1. Json對象:用大括號表示,key的數(shù)據(jù)類型時字符串,value的類型可以是數(shù)值,字符串,null,json數(shù)組,json對象。對應java中的對象。
    • 格式:
    {
    "key1": "value1",
    "key2": "value2",
    "key3": "value3"
     }
    
    {
    "name": "sam",
    "sex": "男",
    "age": 19
     }
    
  2. Json數(shù)組:用中括號表示,value的數(shù)據(jù)類型可以是數(shù)值,字符串,null,json數(shù)組,json對象。對應java中的集合List
    • 格式:
        ["value1", "value2", "value3"]
      
        [{
        "name": "sam",
        "sex": "男",
        "age": 19
        }, {
        "name": "tom",
        "sex": "男",
        "age": 20
        }]
      

Json解析方向:

  1. 將Json對象轉換為Java對象

    • 大括號
    • JSONObject
          JSONObject jsonObject = new JSONObject(json);
          String name = jsonObject.getString("name");
      
  2. 將Json數(shù)組轉換為Java集合

    • 中括號
    • JSONArray
      JSONArray jsonArray = new JSONArray(json2);
         //遍歷
          for (int i = 0; i <jsonArray.length() ; i++) {
              JSONObject jsonObject = jsonArray.getJSONObject(i);
              String name = jsonObject.optString("name");
            //獲取數(shù)據(jù),封裝到對象中,添加到集合
          }
      
  3. 復雜Json數(shù)據(jù)解析

  4. 特殊Json數(shù)據(jù)解析


Json解析技術

  1. 原生解析:

    • 編程相對麻煩
    • 數(shù)據(jù)之間轉換
  2. Gson框架解析:

  3. FastJson框架解析


工具

  1. GsonFormat
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容