Я пытаюсь создать простую приложение для погоды, и для этого я использую YahooWeather api. Таким образом, я получаю ответ что-то вроде этого:Parse YahooWeather JSON response
/**/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, температура и текст. Итак, вот как я пытаюсь получить эти ценности.
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.
О, спасибо, моя ошибка, но в любом случае не работает ... – WdarinS
@WdarinS: см. Мой объект редактирования 'условие' находится в' item' jsonObject, поэтому вам сначала нужно получить объект 'item' из main, затем получить 'условие 'от него –