Ace教你一步一步做Android新闻客户端(三) JSON数据解析
對于服務器端來說,返回給客戶端的數據格式一般分為html、xml和json這三種格式,現在給大家講解一下json這個知識點,
1 如何通過json-lib和gson這兩個json解析庫來對解析我們的json數據,
2 以及如何在我們的Android客戶端解析來自服務器端的json數據,并更新到UI當中。(下篇來講)
?
一、什么是json
json(Javascript Object Notation)是一種輕量級的數據交換格式,相比于xml這種數據交換格式來說,因為解析xml比較的復雜,而且需要編寫大段的代碼,所以客戶端和服務器的數據交換格式往往通過json來進行交換。尤其是對于web開發來說,json數據格式在客戶端直接可以通過javascript來進行解析。
json一共有兩種數據結構,一種是以 (key/value)對形式存在的無序的jsonObject對象,一個對象以“{”(左花括號)開始,“}”(右花括號)結束。每個“名稱”后跟一個“:”(冒號);“‘名稱/值’ 對”之間使用“,”(逗號)分隔。
例如:{"name": "xiaoluo"}, 這就是一個最簡單的json對象,對于這種數據格式,key值必須要是string類型,而對于value,則可以是string、number、object、array等數據類型:
另一種數據格式就是有序的value的集合,這種形式被稱為是jsonArray,數組是值(value)的有序集合。一個數組以“[”(左中括號)開始,“]”(右中括號)結束。值之間使用“,”(逗號)分隔。
?
更多的有關json數據格式可以參加json的官網,http://www.json.org/json-zh.html,咱們主要講的是如何解析服務器發過來的數據
現在貼上一個API接口 ?大家可以拿來用?
http://www.imooc.com/api/teacher?type=4&num=30感謝慕課網 慕課網真的是個炒雞棒的網站,初級中級高級教程都有(好的東西當然要安利咯!)我聽過傳智 heima 青鳥的課 講的很快 而且內容很多,多而不專,所以阿冰再這里再安利一下;
然后chrome 可以安裝插件JSON-XX 沒有的話百度搜索 JSON在線解析 把網站解析下就可以看見清晰的結構是個
{"data":[{"id":1,
????????????"name":"Tony老師聊shell——環境變量配置文件",
????????????"picSmall":"http://img.mukewang.com/55237dcc0001128c06000338-300-170.jpg",
????????????"picBig":"http://img.mukewang.com/55237dcc0001128c06000338.jpg",
????????????"description":"為你帶來shell中的環境變量配置文件",
????????????"learner":12312},{},{},{},{},{}]
從上面的小科普知道 這是個JSONArray
下面等晚上吃完飯寫
?
?
?
轉載于:https://www.cnblogs.com/AceIsSunshineRain/p/5148846.html
總結
以上是生活随笔為你收集整理的Ace教你一步一步做Android新闻客户端(三) JSON数据解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 全国计算机等级考试题库二级C操作题100
- 下一篇: android sina oauth2.