Ответ 1
Вы можете использовать функцию JSONObject
has
:
if(myJSONObject.has("UnpublishDate")) {
//it has it, do appropriate processing
}
Я использую org.json.JSONObject
(и парсер) в приложении Android для анализа канала JSON. Каков наилучший способ определить, существует ли свойство в одном из возвращаемых объектов?
Скажем, у меня есть JSON-канал, включая "Новости". В некоторых новостях есть свойство "UnpublishDate" (это дата, когда новости больше неактивны), в то время как некоторые из новостей не имеют этого свойства.
Лучшее решение, с которым я столкнулся (хотя еще не реализовано), - это просто "try-catch" вокруг theJSONObject.get("UnpublishDate")
- знаете ли вы о каком-либо лучшем решении (это более грациозно, когда классные шкалы к нескольким "необязательным" свойствам в канале JSON)?
Вы можете использовать функцию JSONObject
has
:
if(myJSONObject.has("UnpublishDate")) {
//it has it, do appropriate processing
}