Обновление: Я должен был упомянуть об этом сразу с места в карьер: сначала я рассмотрел структуру сопоставления Java/JSON, но мой менеджер не хочет, чтобы я добавлял больше зависимостей от проекта, поэтому это исключение. Барабан JSON-Java уже находится в нашем пути к классам, поэтому я мог бы использовать это, но все же не видел лес через деревья о том, как его можно использовать.Самый простой способ извлечь поля из JSON
программаМой Java является вручают JSON следующего вида (Althought значения будут меняться все время):
{"order":{"booze":"1","handled":"0","credits":"0.6",
"execute":0,"available":["299258"],"approved":[],
"blizzard":"143030","reviewable":["930932","283982","782821"],
"units":"6","pending":["298233","329449"],"hobbit":"blasphemy"}}
Я ищу самый простой, эффективный, верный способ вишневого выбора конкретных значения из этой строки JSON и агрегирование их в List<Long>
.
В частности, я ищу для приточно-агрегатного все «идентификаторов», то есть, все числовых значения, которые вы видите на поля available
, approved
, reviewable
и pending
. Каждое из этих полей представляет собой массив из 0+ «идентификаторов». Так, в приведенном выше примере, мы видим следующую разбивку идентификаторов:
available
: имеет 1 идентификатор (299258)approved
: имеет 0 идентификаторовreviewable
: имеет 3 идентификаторов (930932, 283982, 782821)pending
: имеют 2 идентификаторов (298233, 329449)
мне нужна немного Java кода для запуска и производит List<Long>
со всеми 6 из этих добытых идентификаторов , в определенном порядке. Иды просто должны сделать это в списке.
Это похоже на невероятно сложное, сложное регулярное выражение, и я даже не уверен, с чего начать. Любая помощь вообще чрезвычайно ценится. Заранее спасибо.
Regex? Почему бы просто не разобрать JSON? –
http://json.org/javadoc/org/json/package-summary.html –
Спасибо, пожалуйста, см. Мое обновление – IAmYourFaja