Я получил текст в формате JSON, который мне нужно проанализировать, но по какой-то причине я не могу его проанализировать, потому что внутри него есть другой массив.Мой JSON выглядит так:
{
"statementId": "1",
"movements": [
{
"id": 65,
"date": "2019-02-05",
"number": 32,
"balance": -4.62,
"purpose": "1"
},
{
"id": 1,
"date": "2019-02-05",
"number": 22,
"balance": -3,
"purpose": "23"
},
{
"id": 32,
"date": "2019-02-05",
"number": 12,
"balance": -11,
"purpose": "2"
}
],
"startPointer": "1122",
"endPointer": "3333"
}
Я использую JsonSlurper.Я хочу знать, возможно ли перехватить все данные внутри «движений», я пытался использовать этот скрипт:
JsonSlurper slurper = new JsonSlurper()
Map parsedJson = slurper.parseText(bodyContent)
String parsed_movements = parsedJson["movements"]
У меня нет проблем с разбором отдельных строк, таких как StatementId или StartPointer, нокогда я пытаюсь разобрать движения со своим сценарием, это дает мне результат как ноль.Я также пытался parsedJson ["движения"] [0], чтобы поймать первое движение, но это также дает мне ошибку.
Я нашел много вещей о парсерах json в интернете, а также в stackoverflow, но ничего из того, что я ищу.Я действительно не думаю, что это повторяющийся вопрос.
РЕДАКТИРОВАТЬ: Я пытался для утверждения, чтобы поместить каждый объект в массив, как это: def движения_array = []
for(def i = 0; i < parsedJson.movements.size(); i++) {
movements_array << parsedJson.movements[i].id
println(movements_array)
}
Но это дает мне ошибку: невозможно вызвать метод size () для нулевого объекта, потому что parsedJson.movements имеет значение null.