標籤:
SwiftyJSON能夠讓在Swift語言中更加簡便處理JSON資料。
With SwiftyJSON all you have to do is:
?
1234 |
let json = JSONValue(dataFromNetworking) if let userName = json[ 0 ][ "user" ][ "name" ].string{ //Now you got your value } |
And don‘t worry about the Optional Wrapping thing, it‘s done for you automatically
?
1234 |
let json = JSONValue(dataFromNetworking) if let userName = json[ 999999 ][ "wrong_key" ][ "wrong_name" ].string{ //Calm down, take it easy, the ".string" property still produces the correct Optional String type with safety } |
?
12345678 |
let json = JSONValue(jsonObject) switch json[ "user_id" ]{ case .JString(let stringValue): let id = stringValue.toInt() case .JNumber(let numberValue): let id = numberValue.integerValue default : println( "ooops!!! JSON Data is Unexpected or Broken" ) |
Error Handling?
123456789101112 |
let json = JSONValue(dataFromNetworking)[ "some_key" ][ "some_wrong_key" ][ "wrong_name" ] if json{ //JSONValue it self confirm to Protocol "LogicValue", with JSONValue.JInvalid produce false and others produce true } else { println(json) //> JSON Keypath Error: Incorrect Keypath "some_wrong_key/wrong_name" //It always tells you where your key starts went wrong switch json{ case .JInvalid(let error): //An NSError containing detailed error information } } |
項目首頁:http://www.open-open.com/lib/view/home/1404443275374
在 Swift 語言中更好的處理 JSON 資料:SwiftyJSON