我的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,error: nil) as? NSDictionaryprintln("JsonDict \(JsonDict)") - This prints nil.....
如果任何人只能给我一个正确的方向推我如何解序列化的JsON文件,并把它放在一个可访问的Swift对象,我会永远感激!
亲切的问候,
Krivvenz。
按照下面的代码:if let path = NSBundle.mainBundle().pathForResource("test",ofType: "Json"){ if let JsonData = NSData(contentsOffile: path,options: .DataReadingMappedIfSafe,error: nil) { if let JsonResult: NSDictionary = NSJsONSerialization.JsONObjectWithData(JsonData,options: NSJsONReadingOptions.MutableContainers,error: nil) as? NSDictionary { if let persons : NSArray = JsonResult["person"] as? NSArray { // Do stuff } } }}
数组“persons”将包含关键人物的所有数据。迭代通过获取它。
总结以上是内存溢出为你收集整理的使用Swift读取JSON文件全部内容,希望文章能够帮你解决使用Swift读取JSON文件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)