首頁(yè) 收藏 QQ群
 網(wǎng)站導(dǎo)航

ZNDS智能電視網(wǎng) 推薦當(dāng)貝市場(chǎng)

TV應(yīng)用下載 / 資源分享區(qū)

軟件下載 | 游戲 | 討論 | 電視計(jì)算器

綜合交流 / 評(píng)測(cè) / 活動(dòng)區(qū)

交流區(qū) | 測(cè)硬件 | 網(wǎng)站活動(dòng) | Z幣中心

新手入門(mén) / 進(jìn)階 / 社區(qū)互助

新手 | 你問(wèn)我答 | 免費(fèi)刷機(jī)救磚 | ROM固件

查看: 11425|回復(fù): 0
上一主題 下一主題
[教程]

Android騰訊微博客戶端開(kāi)發(fā)二:相關(guān)工具篇

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2013-8-28 16:27 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
   
   
  1. json數(shù)據(jù)格式解析我自己分為兩種;   
       
    一種是普通的,一種是帶有數(shù)組形式的;   
       
       
       
       
    普通形式的:   
    服務(wù)器端返回的json數(shù)據(jù)格式如下:   
       
    {"userbean":{"Uid":"100196","Showname":"u75afu72c2u7684u7334u5b50","Avtar":null,"State":1}}   
       
    分析代碼如下:   
       
    // TODO 狀態(tài)處理 500 200   
                    int res = 0;   
                    res = httpClient.execute(httpPost).getStatusLine().getStatusCode();   
                    if (res == 200) {   
                        /*   
                         * 當(dāng)返回碼為200時(shí),做處理   
                         * 得到服務(wù)器端返回json數(shù)據(jù),并做處理   
                         * */   
                        HttpResponse httpResponse = httpClient.execute(httpPost);   
                        StringBuilder builder = new StringBuilder();   
                        BufferedReader bufferedReader2 = new BufferedReader(   
                                new InputStreamReader(httpResponse.getEntity().getContent()));   
                        String str2 = "";   
                        for (String s = bufferedReader2.readLine(); s != null; s = bufferedReader2   
                                .readLine()) {   
                            builder.append(s);   
                        }   
                        Log.i("cat", ">>>>>>" + builder.toString());   
       
    JSONObject jsonObject = new JSONObject(builder.toString())   
                            .getJSONObject("userbean");   
       
                    String Uid;   
                    String Showname;   
                    String Avtar;   
                    String State;   
       
                    Uid = jsonObject.getString("Uid");   
                    Showname = jsonObject.getString("Showname");   
                    Avtar = jsonObject.getString("Avtar");   
                    State = jsonObject.getString("State");   
    帶數(shù)組形式的:   
    服務(wù)器端返回的數(shù)據(jù)格式為:   
       
    {"calendar":   
        {"calendarlist":   
                [   
                {"calendar_id":"1705","title":"(u4eb2u5b50)ddssd","category_name":"u9ed8u8ba4u5206u7c7b","showtime":"1288927800","endshowtime":"1288931400","allDay":false},   
                {"calendar_id":"1706","title":"(u65c5u884c)","category_name":"u9ed8u8ba4u5206u7c7b","showtime":"1288933200","endshowtime":"1288936800","allDay":false}   
                ]   
        }   
    }   
       
    分析代碼如下:   
       
    // TODO 狀態(tài)處理 500 200   
                    int res = 0;   
                    res = httpClient.execute(httpPost).getStatusLine().getStatusCode();   
                    if (res == 200) {   
                        /*   
                         * 當(dāng)返回碼為200時(shí),做處理   
                         * 得到服務(wù)器端返回json數(shù)據(jù),并做處理   
                         * */   
                        HttpResponse httpResponse = httpClient.execute(httpPost);   
                        StringBuilder builder = new StringBuilder();   
                        BufferedReader bufferedReader2 = new BufferedReader(   
                                new InputStreamReader(httpResponse.getEntity().getContent()));   
                        String str2 = "";   
                        for (String s = bufferedReader2.readLine(); s != null; s = bufferedReader2   
                                .readLine()) {   
                            builder.append(s);   
                        }   
                        Log.i("cat", ">>>>>>" + builder.toString());   
                        /**   
                         * 這里需要分析服務(wù)器回傳的json格式數(shù)據(jù),   
                         */   
                        JSONObject jsonObject = new JSONObject(builder.toString())   
                                .getJSONObject("calendar");   
                        JSONArray jsonArray = jsonObject.getJSONArray("calendarlist");   
                        for(int i=0;i<jsonArray.length();i++){   
                            JSONObject jsonObject2 = (JSONObject)jsonArray.opt(i);   
                            CalendarInfo calendarInfo = new CalendarInfo();   
                            calendarInfo.setCalendar_id(jsonObject2.getString("calendar_id"));   
                            calendarInfo.setTitle(jsonObject2.getString("title"));   
                            calendarInfo.setCategory_name(jsonObject2.getString("category_name"));   
                            calendarInfo.setShowtime(jsonObject2.getString("showtime"));   
                            calendarInfo.setEndtime(jsonObject2.getString("endshowtime"));   
                            calendarInfo.setAllDay(jsonObject2.getBoolean("allDay"));   
                            calendarInfos.add(calendarInfo);   
                        }   
       
    總結(jié),普通形式的只需用JSONObject ,帶數(shù)組形式的需要使用JSONArray 將其變成一個(gè)list。
復(fù)制代碼
JsonViewer.zip(44.23 KB, 下載次數(shù): 192)[/I]2011-9-13 12:10 上傳點(diǎn)擊文件名   下載積分: 下載豆 -2    
   
   
   

上一篇:第二十九講:WebView學(xué)習(xí)指南
下一篇:android鬧鐘——原代碼

本版積分規(guī)則

Archiver|新帖|標(biāo)簽|軟件|Sitemap|ZNDS智能電視網(wǎng) ( 蘇ICP備2023012627號(hào) )

網(wǎng)絡(luò)信息服務(wù)信用承諾書(shū) | 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證:蘇B2-20221768 丨 蘇公網(wǎng)安備 32011402011373號(hào)

GMT+8, 2024-10-20 05:46 , Processed in 0.070214 second(s), 16 queries , Redis On.

Powered by Discuz!

監(jiān)督舉報(bào):report#znds.com (請(qǐng)將#替換為@)

© 2007-2024 ZNDS.Com

快速回復(fù) 返回頂部 返回列表