2015-01-01 4 views
-2

Я хочу, чтобы разобрать файл JSON, это в моем JSon файле:Swift Разбор JSON не работает

{ 
    "currentPowerByClient": 0, <- i want to read this 
    "currentPowerToClient":518, 
    "tariff":1, 
    "totalGasDelivered":1061.004, 
    "totalPowerByClientHigh":10.704, 
    "totalPowerByClientLow":23.042, 
    "totalPowerToClientHigh":912.221, 
    "totalPowerToClientLow": 693.499 
} 

это мой скор код, объект под названием JSONResult содержит мой JSON код

var jsonResult: NSDictionary = NSJSONSerialization.JSONObjectWithData(data, options: 
NSJSONReadingOptions.MutableContainers, error: nil) as NSDictionary 

if let item = jsonResult as NSDictionary? { 
    if let currentPowerByClient = item["currentPowerByClient"] as? NSDictionary { 
     println(currentPowerByClient) 
    } 
} 

, когда я запускаю его, он не печатает ничего

+1

Возможно, вы должны использовать параметр ошибки; было бы полезно узнать, является ли jsonResult просто нулевым или чем-то отличным от NSDictionary – stefreak

+0

У меня нет ошибок, возможно, jsonResult - это нуль, но я не знаю, почему это nil – marnix

+0

, поэтому вы действительно изменили свой код, чтобы фактически использовать параметр ошибки, и вы не получили никакой ошибки, или вы не получили никакой ошибки с вышеуказанным кодом? – stefreak

ответ

1

линия

if let currentPowerByClient = item["currentPowerByClient"] as? NSDictionary 

должен быть

if let currentPowerByClient = item["currentPowerByClient"] as? NSNumber 

потому item["currentPowerByClient"], как ожидается, будет несколько, а не словарь. он работает тогда

+0

спасибо! это сработало для меня! – marnix

+0

, пожалуйста, примите его! – stefreak

Смежные вопросы