Estou realmente lutando para tentar ler um arquivo JSON no Swift para que eu possa brincar com ele. Passei a maior parte de 2 dias pesquisando e tentando métodos diferentes, mas ainda não tive sorte, então me inscrevi no StackOverFlow para ver se alguém pode me apontar na direção certa .....
Meu arquivo JSON é chamado test.json e contém o seguinte:
{
"person":[
{
"name": "Bob",
"age": "16",
"employed": "No"
},
{
"name": "Vinny",
"age": "56",
"employed": "Yes"
}
]
}
O arquivo é armazenado nos documentos diretamente e eu o acesso usando o seguinte código:
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.....
Se alguém puder me dar um empurrão na direção certa sobre como eu posso desserializar o arquivo JSON e colocá-lo em um objeto Swift acessível, serei eternamente grato!
Atenciosamente,
Krivvenz.
path
é visível apenas no if
escopo e não é resolvido quando você o usa NSData(contentsOfFile, options, error)
; você também tem erros de digitação nos nomes de enumeração.