使用例子代码:

1.服务器返回的json:

let json = """

{"userInfos": [{"age": 18,"sex": true,"height": 178.55999,"userName": "小黑"},{"age": 20,"sex": false,"height": 150.555,"userName": "小百"}]}

"""

2.创建的模型类

①. 非修改结构中的key值

struct UserList: Codable {

var userInfos: [UserInfo] = []

struct UserInfo: Codable {

var userName: String = ""

var age: Int?

var height: Float?

var sex: Bool = false

}

}

②. 修改结构中某个key值(自定义键值名)

struct UserList: Codable {

var userInfos: [UserInfo] = []

struct UserInfo: Codable {

var userName: String = ""

var age: Int?

var bodyHeight: Float? // key: height

var sex: Bool = false

// 改变key的名称; 需要全部都在枚举中体现(不用修改key的, 也需写出) 写出的key与结构中顺序无关

private enum CodingKeys: String, CodingKey {

case bodyHeight = "height"

case userName

case age

case sex

}

}

}

使用

let data = json.data(using: .utf8)!

let jsonDecoder = JSONDecoder()

let model = try? jsonDecoder.decode(UserList.self, from: data)

附上 模型->json:

let encoder = JSONEncoder()

encoder.outputFormatting = .prettyPrinted //输出的格式设置

let data1 = try? encoder.encode(model)

model存储 swift_使用Swift原生JSON-Model相关推荐

  1. HandyJSON:Swift语言JSON转Model工具库

    背景 JSON是移动端开发常用的应用层数据交换协议.最常见的场景便是,客户端向服务端发起网络请求,服务端返回JSON文本,然后客户端解析这个JSON文本,再把对应数据展现到页面上. 但在编程的时候,处 ...

  2. 成功解决raise ValueError(‘No model found in config file.‘) ValueError: No model found in config file.

    成功解决raise ValueError('No model found in config file.') ValueError: No model found in config file. 目录 ...

  3. java model类_java 实体类entity,model模型,javabean的理解以及使用场景

    一.java实体类entity 实体类场景:比如mvc设计中model层定义java实体 对java实体类的众多理解: A. 通常定义在model层里面 B. 一般的实体类对应一个数据表,其中的属性对 ...

  4. 参数化模型(parametric model)和非参数化模型non-parametric model)的区别?哪些模型是参数化模型,哪些模型是非参数化模型?

    参数化模型(parametric model)和非参数化模型non-parametric model)的区别?哪些模型是参数化模型,哪些模型是非参数化模型? 统计学习模型又可以分为参数化模型(para ...

  5. mysql5.7.9 json_Mysql5.7.9原生JSON格式支持

    Mysql5.7.9原生JSON格式支持 创建表 create table news (uid int auto_increment, data json, primary key(uid))engi ...

  6. OpenStack-M版(Mitaka)搭建基于(Centos7.2)+++十、Openstack对象存储服务(swift)上

    十.Openstack对象存储服务(swift)上 配置:我在计算节点添加了两块硬盘(sdb,sdc)用来当存储用,在我这搭建中计算节点也就是存储节点了,原因电脑无法拉动更多虚拟几所以咯... 简单介 ...

  7. OpenStack-M版(Mitaka)搭建基于(Centos7.2)+++十、Openstack对象存储服务(swift)中

    十.Openstack对象存储服务(swift)中 计算节点上(我把计算节点当存储节点用添加了sdb,sdc两块硬盘) 1.安装软件包: yum install xfsprogs rsync  ope ...

  8. swift 访问oracle,Swift实现JSON转Model - HandyJSON使用讲解

    很多时候,我们从服务端请求下的数据都是Json格式,我们需要拿这些数据显示到我们的UI界面. 因此,我们的做法基本都会先将json转为方便使用的数据模型,或者也可以直接转字典解决. 在OC中,我们有很 ...

  9. 自定义组件封装之-如何使用SwfityJSON实现JSON/Model相互转换

    最近在学习Swift的各种框架,在我的另一篇Swift框架学习之-数据解析SwiftyJSON,已经介绍过了如何使用SwfityJSON这个牛逼的纯Swift写的框架,这里就不作过多介绍,主要来说说我 ...

最新文章

  1. Master/Slave知识
  2. 牛客题霸 [将升序数组转化为平衡二叉搜索树]C++题解/答案
  3. tty,串口,控制台与驱动程序
  4. 全国计算机考试真考题库4,全国计算机等级考试无纸化真考题库试卷二级C--(4)资料.docx...
  5. Setting property 'source' to 'org.eclipse.jst.jee.server
  6. Html前端基础(这些基础标签你必须知道!)
  7. a*算法路径规划matlab_【优化求解】基于栅格地图——遗传算法的机器人最优路径规划...
  8. hyperv虚拟机网络速度慢问题的解决办法
  9. 设计每个网站时所追求的5个目标
  10. 小米php架构图,小米商城基本框架部分
  11. 大数据公司数据挖掘的49个案例
  12. 学生对计算机老师评价,浅谈初中计算机专业老师如何对学生进行多元化评价(3页)-原创力文档...
  13. python pyinstaller使用方法_【python快手菜】pyinstaller使用指南
  14. 五步搞定Android开发环境部署——非常详细的Android开发环境搭建教程
  15. 阿里云python中文社区_一文详解如何用 python 做中文分词-阿里云开发者社区
  16. HWOD机试真题(JavaScript)
  17. Junit新语法assertThat
  18. 相似视频搜索—Opera 的 Milvus 实践
  19. 华清远见上海中心22071班 9.30作业
  20. 生活流水账(转载老婆的文章)

热门文章

  1. 设计Whats App
  2. 量子计算机对未来影响,量子计算机和可控核聚变,哪一个对人类未来的影响更大?...
  3. ecshop根目录调用_ecshop调用指定商品分类下的商品
  4. 八个led闪烁c语言程序,闪烁的LED
  5. c语言编写conio库函数,c语言库函数头文件注释
  6. 面料经纬向、正反面判别方法
  7. C++/C代码审查表
  8. 机器视觉软包装行业质量检测解决方案
  9. linux进程fd数量,linux – 文件描述符的数量:/ proc / sys / fs / file-nr和/ proc / $pid / fd之间有什么不同?...
  10. 本地可以使用oracle吗,Oracle - PLS-00642:SQL语句中不允许使用本地集合类型