我有一个json。我正在尝试使用该代码解析它。但是它说
无法将“__NSArrayM”类型的值转换为“NSDictionary”
do {
let dataDictionary: NSDictionary = try NSJSONSerialization.JSONObjectWithData(responseObject as! NSData, options: NSJSONReadingOptions.MutableContainers) as! NSDictionary // <------ Error
if let customerArray = dataDictionary.valueForKey("cart") as? NSArray {
for js in customerArray {
let nameArray = js.valueForKey("name")
let idArray = js.valueForKey("id")
}
}
}
感谢您的帮助
答案 0 :(得分:1)
数据中的根对象是数组,而不是对象(字典)。
您需要根据反序列化的对象动态决定如何处理JSON。
答案 1 :(得分:1)
它告诉你的是你正在解析的JSON对象不是字典,它是一个数组。因此,如果您更改它以便将其值视为数组而不是字典,那么您将能够迭代它。
您需要重新评估您的JSON,以确保其结构符合您的想法。如果您发布了您尝试解析的JSON,那么它也会很有用,这样我们就可以看到它的结构。