SwiftyJSON 如何使用
SwiftyJSON 如何使用
1.最简单的json数据转模型
- json格式
["userName":"jesse","sex":0,"height":0.0]
- 定义
class PersonModel: NSObject {var userName = ""var sex = falsevar height = 0.0init(jsondata: JSON){userName = jsondata["userName"].stringValuesex = jsondata["sex"].boolValueheight = jsondata["height"].doubleValue}
}
- 使用
//服务器返回的json数据 先转化为JSON 类型
let json = ["userName":"jesse","sex":0,"height":0.0]
let jsonDic = JSON.init(json)
let model = PersonModel(jsondata: jsonDic)
2. json中有数组
- json格式
[
"userName":"jesse",
"sex":0,
"height":0.0,
"dog":[["name":"二哈","age":1],["name":"比熊","age":3],["name":"泰迪","age":3]
]
- 定义
class PersonModel: NSObject {var userName = ""var sex = falsevar height = 0.0var dogArray = [DogModel]()init(jsondata: JSON){userName = jsondata["userName"].stringValuesex = jsondata["sex"].boolValueheight = jsondata["height"].doubleValuelet dogs = jsondata["dog"].arrayValuefor dic in dogs{let dicJson = JSON.init(dic)let dogModel = DogModel.init(jsondata:dicJson)dogArray.append(dogModel)}}
}class DogModel: NSObject {var name = ""var age = 0init(jsondata: JSON){name = jsondata["name"].stringValueage = jsondata["age"].intValue}
}
- 使用
//服务器返回的json数据 先转化为JSON 类型
let json = ["userName":"jesse","sex":0,"height":0.0,"dog":[ ["name":"二哈","age":1],["name":"比熊","age":3],["name":"泰迪","age":3]]]
let jsonDic = JSON.init(json)
let model = PersonModel(jsondata: jsonDic)
3. json中有json
- json格式
[
"userName":"jesse",
"sex":0,
"height":0.0,
"dog":["name":"二哈","age":1]
]
- 定义
class PersonModel: NSObject {var userName = ""var sex = falsevar height = 0.0var dogModel = DogModel.init(jsondata:[:])init(jsondata: JSON){userName = jsondata["userName"].stringValuesex = jsondata["sex"].boolValueheight = jsondata["height"].doubleValuelet dog = jsondata["dog"].dictionaryValuedogModel = DogModel.init(jsondata:dog)}
}class DogModel: NSObject {var name = ""var age = 0init(jsondata: JSON){name = jsondata["name"].stringValueage = jsondata["age"].intValue}
}
- 使用
//服务器返回的json数据 先转化为JSON 类型
let json = ["userName":"jesse","sex":0,"height":0.0,"dog": ["name":"二哈","age":1],]
let jsonDic = JSON.init(json)
let model = PersonModel(jsondata: jsonDic)
以上三种就是最常用到的json 格式转化为模型的方式,其他复杂的数据结构模式就留给你自己摸索吧
SwiftyJSON 如何使用相关推荐
- swift_036(Swift之第三方库SwiftyJSON篇)
[快速学会Swift第三方库] SwiftyJSON篇 SwiftyJSON使得用Swift处理JSON数据更加容易.这是解析JSON字符串封装类.实现功能与JavaScript中的JSON.pars ...
- 在 Swift 语言中更好的处理 JSON 数据:SwiftyJSON
SwiftyJSON能够让在Swift语言中更加简便处理JSON数据. With SwiftyJSON all you have to do is: ? 1 2 3 4 let json = JSON ...
- 使用SwiftyJSON解析JSON
因为Swift对于类型有非常严格的控制,它在处理JSON时是挺麻烦的,因为它天生就是隐式类型.SwiftyJSON是一个能帮助我们在Swift中使用JSON的开源类库.开始之前,让我们先看一下在Swi ...
- [绍棠_Swift] SwiftyJSON的使用详解(附样例,用于JSON数据处理)
1,SwiftyJSON介绍与配置 SwiftyJSON是个使用Swift语言编写的开源库,可以让我们很方便地处理JSON数据(解析数据.生成数据). GitHub地址:https://github. ...
- iOS(Swift)学习笔记之SwiftyJSON的使用
本文为原创文章,转载请标明出处 1. 通过CocoaPods安装SwiftyJSON platform :ios, '10.0'target '<Your Target Name>' do ...
- Swift - SwiftyJSON的使用详解(附样例,用于JSON数据处理)
转自:http://www.hangge.com/blog/cache/detail_968.html Swift - SwiftyJSON的使用详解(附样例,用于JSON数据处理) 2016-01- ...
- SwiftyJSON库的使用和思考
转载于:http://swiftist.org/topics/124#2 最近看了一些网络请求的例子,发现Swift在解析JSON数据时特别别扭,总是要写一大堆的downcast(as?)和可选(Op ...
- 25.SwiftyJSON转换JSON的注意
在Swift当中, 如果我们需要解析JSON数据的话, 我们需要用上一堆代码才能解析, 而且解析之后还不一定可以正常运行, 这里提供一个第三方的SwiftyJSON, 可以防止我们在解析JSON数据的 ...
- swift:使用NSJSONSerialization和SwiftyJSON两种方法解析网络返回的json格式数据
在我的博客(下面)两个实验的基础上,使用NSJSONSerialization和SwiftyJSON两种方法解析网络返回的json格式数据,参照视频实现的"天气信息"小实验 1 创 ...
- Xcode报错:No such module SwiftyJSON
2019独角兽企业重金招聘Python工程师标准>>> SwiftyJSON 是一款很棒的 Swift 语言第三方库,主要处理JSON数据,作者是ThoughtWorks的工程师傅若 ...
最新文章
- 27.3. source code
- python-Day03
- SQL 2008 表死锁的解决
- matlab运动前无轨迹线,matlab 前轮前驱运动模型公式 和 轨迹仿真
- 通过jsp实现省市区县四级联动菜单
- VAssistX 常用快捷键
- 计算机组成原理课程设计报告总结
- latex数学公式转换器
- 机器学习——基本原理
- 安信可A9G二次开发的准备工作
- ArcGIS地理配准、影像校正步骤
- gif一键抠图 在线_一款支持智能抠图、钢笔抠图的在线抠图工具上线了 速抠图 sukoutu.com...
- vue双花括号的使用
- 多多小程序(doodoo)发布1.0,基于node,vue开发的微信小程序系统
- 【数理统计】概率统计
- 信息学奥赛一本通 1336 【例3-1】找树根和son(附含解题思路)
- 云原生周报 | K8s 官方推出纪录片;BFE 2021开源总结;服务网格在联通的落地实践
- oracle通过什么命令释放锁,oracle检测锁,释放锁
- 【Linux】误删libc提示Kernel panic not syncing: Attempted to kill init解决办法
- 滑动窗口与双指针的区别