我试图通过这样做将NSData转换为Json:
localhost:49801
这是getJSON方法
let jdata = getJSON("https://api.myjson.com/bins/16j2i")
do {
let json = try NSJSONSerialization.JSONObjectWithData(jdata, options: []) as! [String: AnyObject]
print(json)
} catch {
print("\(error)")
}
错误表示无法将“_NSCFArray”类型的值转换为“NSDictionary”。有任何想法吗?请
答案 0 :(得分:1)
JSON的根元素是数组而不是字典(您的格式类似于[{...},{...}]
)。要修复此错误,您需要将解析代码更改为:
let json = try NSJSONSerialization.JSONObjectWithData(jdata, options: []) as! [[String: AnyObject]]
答案 1 :(得分:0)
let responseString = NSString(data: data!, encoding: String.Encoding.utf8.rawValue)
let convert_array = responseString?.description
// Convert server json response to NSDictionary
do {
if let convertedJsonIntoDict = try JSONSerialization.jsonObject(with: data!, options: []) as? NSArray {
print(convertedJsonIntoDict)
}
答案 2 :(得分:-1)
let data = text.data(using: String.Encoding.utf8)
让json =尝试JSONSerialization.jsonObject(带:data,options:.mutableContainers)为? [字符串:任何]
适用于Swift 3.1&amp ;;斯威夫特4