我尝试制作一个简单的天气应用程序,为此我使用 YahooWeather api。所以我得到这样的回应:
/**/yqlCallback({
"query": {
"count": 3,
"results": {
"channel": [{
"item": {
"pubDate": "Fri, 16 Jan 2015 11:00 am EET",
"condition": {
"temp": "1",
"text": "Cloudy"
},
}
},
{
"item": {
"title": "1",
}
},
{
"item": {
"title": "2",
}
}]
}
}
});
我需要的唯一数据是 pubDate、temp 和 text。所以这就是我尝试获取这些值的方法。
JSONObject main = json.getJSONObject("query").getJSONObject("result").getJSONArray("channel")
.getJSONObject(0);
JSONObject details = main.getJSONObject("condition");
String t1 = details.getString("text");
String t2 = details.getString("temp");
String t3 = main.getString("pubDate");
这给了我这个错误:在 JSON 数据中找不到一个或多个字段。