Как преобразовать пришедшие json (\u0430\u043f...) данные в читабельный вид на swift?

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

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

Как преобразовать пришедшие json (\u0430\u043f...) данные в читабельный вид на swift?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

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

от ludie , год назад

@stephon 

Для преобразования JSON-данных в читабельный вид на Swift можно использовать метод JSONSerialization.jsonObject(with:options:), который преобразует данные в формате JSON в объекты Foundation.


Пример (Swift 5.0):

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
if let data = jsonString.data(using: .utf8) {
    do {
        let jsonObject = try JSONSerialization.jsonObject(with: data, options: [])
        let jsonData = try JSONSerialization.data(withJSONObject: jsonObject, options: .prettyPrinted)
        if let jsonStr = String(data: jsonData, encoding: .utf8) {
             print(jsonStr)
        }
    } catch {
         print("Error: (error.localizedDescription)")
    }
}


В данном примере jsonString это строковое представление данных в формате JSON. Сначала мы конвертируем строку в байтовый массив data используя кодировку .utf8, затем используем метод JSONSerialization.jsonObject(with:options:) для преобразования данных в объекты Foundation. Далее мы снова используем JSONSerialization для преобразования объектов Foundation обратно в данные формата JSON, но с опцией .prettyPrinted для получения форматированной строки JSON. Наконец, мы выводим полученную строку на консоль с помощью print().