Ich habe diesen Code zum Lesen von JSON-Dateien, die ich versuche, in eine Swift 3-Umgebung zu bewegen. Hier ist sie:Swift to Swift 3 Code-Konvertierungen: Lesen von JSON-Dateien
do {
let dictionary = try NSJSONSerialization.JSONObjectWithData(dataOK, options: NSJSONReadingOptions()) as AnyObject!
dictionaryOK = (dictionary as! NSDictionary as? Dictionary <String, AnyObject>)!
}
catch {
print("Level file '\(filename)' is not valid JSON: \(error)")
return nil
}
Xcode Vorschläge gibt einige Fehler zu beheben (wie einige Objekte und Klassen umbenannt wurden), die dies ergibt:
do {
//Problem here: parameters don't match overrides
let dictionary = try JSONSerialization.jsonObject(dataOK as Data, options: JSONSerialization.ReadingOptions()) as AnyObject!
dictionaryOK = (dictionary as! NSDictionary as? Dictionary <String, AnyObject>)!
}
catch {
print("Level file '\(filename)' is not valid JSON: \(error)")
return nil
}
, die keine der jsonObjects Überschreibungen übereinstimmt (es sagt). Ich habe die Dokumentation überprüft, die besagt, dass die Parameter für jsonObjects lauten sollten:
class func jsonObject(with data: Data,
options opt: JSONSerialization.ReadingOptions = []) throws -> AnyObject
Was mache ich falsch?