Я пытаюсь обработать ответ JSON с помощью библиотеки «org.json». Таким образом, я преобразовать строку ответа в JSONArray:Ввести элемент JSONArray в JSONObject - ClassCastException
JSONArray listWallPosts = jsonWallPosts.getJSONArray("response");
и listWallPosts содержит, например, такие данные набор:
[1388,
{
"date": 1441127306,
"from_id": 45700,
"comments": {
"count": 0,
"can_post": 1
},
"to_id": 44970,
"online": 0,
"post_type": "post",
"id": 2469,
"text": "Some message",
"reply_count": 0
},
{
"date": 1425812975,
"from_id": 16089771,
"comments": {
"count": 0,
"can_post": 1
},
"to_id": 44970,
"online": 0,
"post_type": "post",
"id": 2467,
"text": "Some another message",
"reply_count": 0,
}]
При попытке обработать список элементов в цикле:
for(int j=0; j< listWallPosts.length(); j++){
JSONObject post = (JSONObject)listWallPosts.get(j);
//do something
}
I face with ClassCastException - java.lang.Integer нельзя передать в org.json.JSONObject.
Может ли кто-нибудь предложить лучший подход для его обработки? Должен ли я переносить кастинг из элемента списка в JSONObject в try-catch или есть ли лучшие варианты?
Если есть число в массиве JSON, извлекать его как число. Что вы не понимаете из-за ошибки, которую вы предоставили json? –
что такое '1388'? – Rustam
Я понимаю причину исключения, но я спрашиваю «о лучшем подходе к его обработке», а не почему это происходит! –