解析器到json使用swift的JSON数组
问题描述:
我正在做一个与服务器通信的IOS(swift)应用程序。 来自服务器的响应是一个包含一些JSON对象的JSON数组。 当我告诉通过控制台进行串反应是罚款:解析器到json使用swift的JSON数组
[{"NAME":"","SURNAME":"","ID":5,"USERNAME":"dpcabo2"},{"NAME":"","SURNAME":"","ID":10,"USERNAME":"default"},{"NAME":"","SURNAME":"","ID":11,"USERNAME":"esteban"}]
但是当我试图解析这个信息以此来JSON:
var jsonResult: NSDictionary = NSJSONSerialization.JSONObjectWithData(self.my_data!,
options:NSJSONReadingOptions.MutableContainers, error: nil) as NSDictionary
println("\(jsonResult)")
应用程序崩溃。
所以我需要一个解决方案正确解析这个信息。
Ps.self.my_data!是一个NSMutableData。
谢谢
答
您可以使用下面的代码进行解析。它打印并正确解析你的对象。
import Foundation
let jsonObject: [AnyObject] = [
["NAME":"","SURNAME":"","ID":5,"USERNAME":"dpcabo2"],
["NAME":"","SURNAME":"","ID":10,"USERNAME":"default"],
["NAME":"","SURNAME":"","ID":11,"USERNAME":"esteban"]
]
let jsonOptional: AnyObject! = NSJSONSerialization.JSONObjectWithData(jsonData, options: NSJSONReadingOptions(0), error: nil)
响应是如下:
[["USERNAME": "dpcabo2", "ID": 5, "NAME": "", "SURNAME": ""],
["USERNAME": "default", "ID": 10, "NAME": "", "SURNAME": ""],
["USERNAME": "esteban", "ID": 11, "NAME": "", "SURNAME": ""]]
+0
thansk so muchhhhh !!!!运行良好;) – user3086708 2014-10-09 12:59:13
什么让你觉得'jsonResult'应该是'NSDictionary'?你甚至可以自己说服务器返回一个JSON **数组**。 – borrrden 2014-10-09 10:20:05
ummm,我不知道,当服务器返回只有一个用户它发送一个JSON对象,这种方式运行正常,但是当返回一个JSON数组我不知道如何解析器,一些想法? – user3086708 2014-10-09 10:22:20