在 Swift 语言中更好的处理 JSON 数据:SwiftyJSON

Posted swift语言

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在 Swift 语言中更好的处理 JSON 数据:SwiftyJSON相关的知识,希望对你有一定的参考价值。

SwiftyJSON能够让在Swift语言中更加简便处理JSON数据。

With SwiftyJSON all you have to do is:

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

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
}
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


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的主要内容,如果未能解决你的问题,请参考以下文章

HandyJSON:Swift语言JSON转Model工具库

Swift 中的正确错误处理

Swift 对象内存模型探究

swift中JSon数据的处理

阿里巴巴最新开源项目 - [HandyJSON] 在Swift中优雅地处理JSON

Swift 中的 JSON 解析(iOS)