2011-08-10 24 views
0

我目前正在使用android平台上的JSON。谁能告诉我如何阅读复杂的JSON,任何帮助表示赞赏。如何通过JSON获取http响应的嵌套数组的值

我得到以下JSON响应

{ 
    "query": { 
     "count":1, 
     "created":"2011-08-10T06:09:42Z", 
     "lang":"en-US", 
     "results": { 
      "channel":{ 
       "item":{ 
        "title":"Conditions for Las Vegas, NV at 7:53 pm PDT", 
        "lat":"36.17", 
        "long":"-115.14", 
        "link":"http://us.rd.yahoo.com/dailynews/rss/weather/Las_Vegas__NV/*http://weather.yahoo.com/forecast/USNV0049_f.html", 
        "pubDate":"Tue, 09 Aug 2011 7:53 pm PDT", 
        "condition":{ 
         "code":"31", 
         "date":"Tue, 09 Aug 2011 7:53 pm PDT", 
         "temp":"97", 
         "text":"Clear" 
        }, 
        "description":"\n<img src=\"http://l.yimg.com/a/i/us/we/52/31.gif\"/><br />\n<b>Current Conditions:</b><br />\nClear, 97 F<BR />\n<BR /><b>Forecast:</b><BR />\nTue - Clear. High: 106 Low: 77<br />\nWed - Sunny. High: 105 Low: 77<br />\n<br />\n<a href=\"http://us.rd.yahoo.com/dailynews/rss/weather/Las_Vegas__NV/*http://weather.yahoo.com/forecast/USNV0049_f.html\">Full Forecast at Yahoo! Weather</a><BR/><BR/>\n(provided by <a href=\"http://www.weather.com\" >The Weather Channel</a>)<br/>\n", 
        "forecast":[ 
         { 
          "code":"31", 
          "date":"9 Aug 2011", 
          "day":"Tue", 
          "high":"106", 
          "low":"77", 
          "text":"Clear" 
         },{ 
          "code":"32", 
          "date":"10 Aug 2011", 
          "day":"Wed", 
          "high":"105", 
          "low":"77", 
          "text":"Sunny" 
         }], 
        "guid":{ 
         "isPermaLink":"false", 
         "content":"USNV0049_2011_08_09_19_53_PDT" 
        } 
       } 
      } 
     } 
    } 
} 

告诉我,我如何得到query.results.chennel.item.titlequery.results.chennel.item,description - 元素?

+8

问题在哪里?我找不到问题?它在哪里?帮我找到问题!请! – WarrenFaith

+4

首先,您必须添加一些代码并显示真正的问题在哪里,第二:在Android文档中查看JSONObject和JSONArray – Houcine

+0

以下是示例[示例](http://www.kodejava.org/examples /587.html) – Hanry

回答

1

请参阅JSONObject。你会做类似

String jsonReponse; 
// TODO set jsonResponse to {"query": { "count":1, ...}} 
JSONObject response = new JSONObject(jsonReponse); 
JSONObject query = response.getJSONObject("query"); 
JSONObject results = query.getJSONObject("results"); 
... 
+0

好的答案,对我有用。谢谢... –

+0

请勾选它回答你的问题,然后。还要注意你应该检查'null'(或添加一个Try/catch) – rds