2017年3月7日 星期二

JSON Parser

 JSON Parser


 JSON Parser:Json(JavaScript Object Notation)解析器。


        android 提供四種不同的類別處理json
        JSONArray,JSONObject,JSONStringer and JSONTokenizer

     JSONArray:定義JSON Array的物件。
     JSONObject:定義JSON Object的物件。
     JSONStringer定義JSON 格式的文件。
     JSONTokenizer解析JSON Object類別。


{
     //sys:系統資訊

    //country:國家
     //sunrise:日出時間

     //sunset:日落時間
   "sys":
   {
      "country":"GB",
      "sunrise":1381107633,
      "sunset":1381149604
   },
   //weather:天氣資料
   //id:天氣資料id
   //main:主要的氣象資料
   //description:描述
   //icon:天氣的圖案
   "weather":[
      {
         "id":711,
         "main":"Smoke",
         "description":"smoke",
         "icon":"50n"
      }
   ],
   //main:
  //temp:溫度
  //pressure:氣壓
  "main":
   {
      "temp":304.15,
      "pressure":1009,
   }
}

  

JSON - Elements

  
   Array([):在JSON檔案中,方括號([)代表JSON陣列。

    Objects({)在JSON檔案中,波浪括號({)代表JSON陣列。


   KeyJSON物件包含一個key是字串,成對的key組成JSON物件。

   Value:每個key的值都有可能是字串、整數或雙精度數等等。

    key Value 一對

JSON - Parsing


  解析JSON,要新建JSONObject類別,指定字串包含JSON資料。
   
   String in;
  JSONObject reader = new JSONObject(in);

  一個json 檔案,包含不同物件、不同key/value等,SONObject可以單獨分開

JSONObject sys  = reader.getJSONObject("sys");
country = sys.getString("country");
JSONObject main  = reader.getJSONObject("main");
temperature = main.getString("temp");


  解析  JSON files

   get(String name):取得Object type的資料。

    getBoolean(String name):取得Boolean值。

    getDouble(String name)取得雙精確度值。

    getInt(String name)取得整數值。

    getLong(String name)取得Long值。

    length():傳回名稱或是value的長度

    names():傳回陣列裡面的字串名稱。


  參考文獻


Android - JSON Parser

Android JSON解析器教程

JSON & Ajax

Android JSON解析器

JSON
[Android] Android讀取JSON URL

[Android] 3-2 JSON的介紹和解析

Android使用JSOUP抓取網頁資料

android json解析及簡單例子

國碼與電話國碼對應表 (JSON)

XML與JSON的區別

【簡明教程】JSON

6-2 常用欄位方法(sunrise)

Weather Maps(sunrise、sunset)



【Android】AsyncTask - Thread 外的另一選擇(onPreExecute)

Android JSON Parsing Tutorial(有例子)

  Android JSON基本介紹與範例

Android Tips 開發小技巧 - Activity.runOnUiThread

更新UI的兩種方法handler和runOnUiThread

Android中更新UI的幾種方法

Android - HttpURLConnection 基本教學 取得網頁資料(HTML, XML, JSON)

Android使用HttpClient與HttpURLConnection連線範例

Android- HttpURLConnection Get

HTTP連線(HttpURLConnection、HttpClient) (setRequestMethod)



   

沒有留言:

張貼留言