sguruapp@gmail.com
facebook vk instagram Одноклассники youtube

Загрузить локальный json файл (Load local json file) - Swift 5


///Step1 - Структура
struct ResponseData: Decodable {
var person: [Person]
}

struct Person : Decodable {
var title: String
var image: String
var favorite: Bool
}

// Step2 Функция для загрузки и парсинга json
func loadJson(filename fileName: String) -> [Person]? {
if let url = Bundle.main.url(forResource: fileName, withExtension: "json") {
do {
let data = try Data(contentsOf: url)
let decoder = JSONDecoder()
let jsonData = try decoder.decode(ResponseData.self, from: data)
return jsonData.person
} catch {
print("error:\(error)")
}
}
return nil
}

///Step3 - Вызов функции
override func viewDidLoad() {
super.viewDidLoad()

print(loadJson(filename: "document") ?? "---")
}

ПРИМЕР ДАННЫХ

{
"person": [
{
"title": "Витамин А",
"image": "Vitamin1",
"favorite": false
},
{
"title": "Витамин B6",
"image": "Vitamin2",
"favorite": false
}]
}

Возврат к списку

обучись профессии будущего

Хочешь стать успешным разработчиком
приложений? Тогда добро пожаловать к нам.

обучись профессии будущего