J'ai vraiment du mal à essayer de lire un fichier JSON dans Swift afin de pouvoir jouer avec. J'ai passé la majeure partie de 2 jours à rechercher et à essayer différentes méthodes, mais je n'ai pas encore de chance, je me suis donc inscrit à StackOverFlow pour voir si quelqu'un peut m'orienter dans la bonne direction .....
Mon fichier JSON s'appelle test.json et contient les éléments suivants:
{
"person":[
{
"name": "Bob",
"age": "16",
"employed": "No"
},
{
"name": "Vinny",
"age": "56",
"employed": "Yes"
}
]
}
Le fichier est stocké directement dans les documents et j'y accède en utilisant le code suivant:
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.....
Si quelqu'un peut simplement me donner un coup de pouce dans la bonne direction sur la façon dont je peux désérialiser le fichier JSON et le placer dans un objet Swift accessible, je serai éternellement reconnaissant!
Sincères amitiés,
Krivvenz.
path
n'est visible que dans la if
portée et n'est pas résolu lorsque vous l'utilisez dans NSData(contentsOfFile, options, error)
; vous avez également des fautes de frappe dans les noms d'énumération.