Как парсить сложный массив в swift 4?

Пользователь

от stanford_mosciski , в категории: Swift , год назад

Как парсить сложный массив в swift 4?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от evalyn.barrows , год назад

@stanford_mosciski 

Для парсинга сложного массива в Swift 4 рекомендуется использовать стандартную библиотеку Codable. Для этого необходимо выполнить следующие шаги:

  1. Определите структуру данных, которая соответствует структуре массива. Например:
1
2
3
4
5
struct MyData: Codable {
    let id: Int
    let name: String
    let date: Date
}


  1. Создайте JSON-декодер с помощью класса JSONDecoder:
1
let decoder = JSONDecoder()


  1. Используйте метод decoder.decode для декодирования JSON-данных в объект структуры:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
let jsonData = """
[
    {"id": 1, "name": "John", "date": "2019-07-01T12:00:00Z"},
    {"id": 2, "name": "Jane", "date": "2019-07-02T12:00:00Z"}
]
""".data(using: .utf8)!

do {
    let dataArray = try decoder.decode([MyData].self, from: jsonData)
    for data in dataArray {
        print(data.id, data.name, data.date)
    }
} catch {
    print(error.localizedDescription)
}


  1. Обработайте возможные ошибки при декодировании.