Мені дуже важко намагатися прочитати файл JSON у Swift, щоб я міг з ним пограти. Я витратив найкращу частину 2-х днів на пошук і пробування різних методів, але поки що не пощастило, тому я підписався на StackOverFlow, щоб побачити, чи хтось може вказати мені в правильному напрямку .....
Мій файл JSON називається test.json і містить таке:
{
"person":[
{
"name": "Bob",
"age": "16",
"employed": "No"
},
{
"name": "Vinny",
"age": "56",
"employed": "Yes"
}
]
}
Файл зберігається в документах безпосередньо, і я отримую доступ до нього за допомогою наступного коду:
let file = "test.json"
let dirs : String[] = NSSearchPathForDirectoriesInDomains(
NSSearchpathDirectory.DocumentDirectory,
NSSearchPathDomainMask.AllDomainMask,
true) as String[]
if (dirs != nil) {
let directories: String[] = dirs
let dir = directories[0]
let path = dir.stringByAppendingPathComponent(file)
}
var jsonData = NSData(contentsOfFile:path, options: nil, error: nil)
println("jsonData \(jsonData)" // This prints what looks to be JSON encoded data.
var jsonDict = NSJSONSerialization.JSONObjectWithData(jsonData, options: nil, error: nil) as? NSDictionary
println("jsonDict \(jsonDict)") - This prints nil.....
Якщо хтось може просто підштовхнути мене в правильному напрямку щодо того, як я можу де-серіалізувати файл JSON і помістити його у доступний об'єкт Swift, я буду вічно вдячний!
З повагою,
Криввенц.
path
він видно лише в if
обсязі та невирішений, коли ви його використовуєте NSData(contentsOfFile, options, error)
; у вас також є помилки друку в іменах перерахувань.