Проблемы с парсингом json
Добавлено: 04 май 2014, 01:51
Здравствуйте!
Помогите пожалуйста разобраться в чём проблема. Вот мой json
вот так я начинаю его парсинг:
и падаем с такой ошибкой:
Когда метод nextName() вызывается второй раз. Получается в первый раз он получает токен "code", а потом не фига не получает.
Как быть?
Помогите пожалуйста разобраться в чём проблема. Вот мой json
Код: Выделить всё
{
"code": 0,
"result": [
{
"id": 1,
"type": "new",
"complex": "Название",
"complex_id": 1,
"title": "Первая новость",
"text": "<p>текст текст текст</p>\r\n",
"link": "ya.ru",
"image": "http://159.253.21.179/media/images/avatar3.jpg",
"pub_date": "31-03-2014 09:32 +0000",
"mod_date": "29-04-2014 15:03 +0000",
"pub_date_unix": 1396243924,
"mod_date_unix": 1398769409
},
{
"id": 2,
"type": "new",
"complex": "Название",
"complex_id": 1,
"title": "Вторая новость",
"text": "<h1>Заголовок новости</h1>\r\n\r\n<hr />\r\n<p>текст <strong>текст</strong> <em>текст</em> текст</p>\r\n",
"link": "",
"image": "",
"pub_date": "31-03-2014 10:25 +0000",
"mod_date": "28-04-2014 09:19 +0000",
"pub_date_unix": 1396247135,
"mod_date_unix": 1398662374
}
]
}Код: Выделить всё
public ArrayList<NewsModel> readMessagesArray(JsonReader reader) throws IOException {
ArrayList<NewsModel> messages = null;
reader.beginObject();
while (reader.hasNext()) {
try {
String nm = reader.nextName();
if (nm.equals("result")) {
reader.beginArray();
messages = processArray(reader);
reader.endArray();
}
} catch(Exception e){
e.printStackTrace();
}
}
reader.endObject();
return messages;
}Код: Выделить всё
java.lang.IllegalStateException: Expected a name but was NUMBER
Как быть?