Android 解析JSON

來源:互聯網
上載者:User

public void parseSearchDirectAllData(ArrayList programmeSites) {if(programmeSites != null) {programmeSites.clear();try {             JSONArray segsArray = new JSONArray(jsonString);                    if (segsArray != null)for (int k = 0; k < segsArray.length(); k++) {JSONObject segObject = segsArray.optJSONObject(k);if (segObject != null) {if(segObject.has("programmeSite")) {JSONArray jsonResultsArray = segObject.optJSONArray("programmeSite");if(jsonResultsArray != null && jsonResultsArray.length() > 0) {for (int i = 0; i < jsonResultsArray.length(); i++) {JSONObject jsonResultObject = jsonResultsArray.optJSONObject(i);if(jsonResultObject != null) {ProgrammeSite programmeSite = new ProgrammeSite();programmeSite.setSiteId(jsonResultObject.optInt("siteId"));if(jsonResultObject.has("episode")) {JSONArray jsonResultsSerisesArray = jsonResultObject.optJSONArray("episode");if(jsonResultsSerisesArray != null && jsonResultsSerisesArray.length() > 0) {ArrayList episodes = new ArrayList();for (int j = 0; j < jsonResultsSerisesArray.length(); j++) {JSONObject jsonResultSerisesObject = jsonResultsSerisesArray.optJSONObject(j);if(jsonResultSerisesObject != null) {Episode episode = new Episode();episode.setName(jsonResultSerisesObject.optString("name"));episode.setUrl(jsonResultSerisesObject.optString("url"));episodes.add(episode);}}programmeSite.setEpisodes(episodes);}}programmeSites.add(programmeSite);}}}}}}} catch (Exception e) {Logger.e(Youku.TAG_GLOBAL, "ParseJson#parseSearchDirectAllData()", e);}}}


上面代碼輸入JSON資料如下:

["programmeSite": [       {//begin"id": 405642,"siteId": 17,"episode":[    {    "url": "http://www.letv.com/ptv/vplay/1606059.html",    "name": "黑狐01",    "seconds": 2701,    "orderId": 1,    "orderStage": 1,    "lastUpdate": 1376496000,    "viewOrder": 1,    "logo": "",    "tagType": 0,    "vid": 0,   },   {    "url": "http://www.letv.com/ptv/vplay/1427315.html",    "name": "黑狐02",    "seconds": 2699,    "orderId": 2,    "orderStage": 2,    "lastUpdate": 1376496000,    "viewOrder": 1,    "logo": "",    "tagType": 0,    "vid": 0,   },       ]            }//end{//begin       "id": 405715,       "siteId": 1,       "episode": [  {    "url": "http://www.tudou.com/albumplay/hLzWIWJyMXk/AHf67i8rVrg.html",    "name": "黑狐-第1集",    "seconds": 2699,    "orderId": 1,    "orderStage": 1,    "lastUpdate": 1386604800,    "viewOrder": 2,    "logo": "http://r3.ykimg.com/0543040850EB192B6A0A470A11CD1DA6",    "tagType": 0,    "vid": 130472276,  },  {    "url": "http://www.tudou.com/albumplay/hLzWIWJyMXk/XaJL16jobbE.html",    "name": "黑狐-第2集",    "seconds": 2699,    "orderId": 2,    "orderStage": 2,    "lastUpdate": 1387468800,    "viewOrder": 2,    "logo": "http://r3.ykimg.com/0543040850BE87EF6A0A442EFAD0048F",    "tagType": 0,    "vid": 130472277,  },      ]     }//end]]



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.