Как мне разобрать строку json, если я не знаю ее объектную модель заранее? - PullRequest
1 голос
/ 08 февраля 2012

Я хочу работать с Open Street Map (OSM).OSM сохраняет свои форматы данных максимально гибкими, используя пары ключ-значение.Я занимаюсь разработкой приложения для Android и собираюсь отправить ему строку данных OSM в формате JSON.Что мне делать, если я заранее не знаю, как будет выглядеть JSON?Какая библиотека была бы лучшей?

Спасибо за помощь, Крис

Ответы [ 2 ]

4 голосов
/ 08 февраля 2012

Это может быть то, что вы ищете

http://code.google.com/p/google-gson/

Приветствия

2 голосов
/ 08 февраля 2012

Прежде всего, вам нужно знать, содержит ли файл JSON массив или объект.Если первый символ без пробела является [, это массив, если это {, это объект.Создание JSONArray, когда первый символ представляет собой {или наоборот, вызовет исключение времени выполнения.

Во-вторых, когда у вас есть JSONObject, вы захотите получить от него данные.Таким образом, вы должны знать имя ключей, чтобы получить значения, например:

myStreet = myJsonOjbect.getString("street name")

Если вы не собираетесь получать данные из него, какой смысл иметь файл json?Конечно, вы можете открыть JSON в Lint, чтобы увидеть, какова структура.

надеюсь, это поможет!

...