codable相关内容

在 Swift 4 中使用 Decodable 和继承

如果使用类继承会破坏类的可解码性.比如下面的代码 类服务器:可编码{变量 id:整数?}类开发:服务器{变量名称:字符串?var userId : 整数?}var json = "{\"id\" : 1,\"name\" : \"大型建筑开发\"}"让 jsonDecoder = JSONDecoder()let item = try jsonDecoder.decode(Development ..
发布时间:2022-01-31 18:51:25 移动开发

使用 Swift 4 中的 JSONDecoder,缺少的键可以使用默认值而不是可选属性吗?

Swift 4 添加了新的 Codable 协议.当我使用 JSONDecoder 时,它似乎要求我的 Codable 类的所有非可选属性在 JSON 中有键,否则会引发错误. 让我的类的每个属性都是可选的似乎是不必要的麻烦,因为我真正想要的是使用 json 中的值或默认值.(我不希望该属性为零.) 有没有办法做到这一点? class MyCodable: Codable {var ..
发布时间:2022-01-31 18:39:46 移动开发

如何在 Swift [45] 可解码协议中解码 JSON 字典类型的属性

假设我有 Customer 数据类型,其中包含一个 metadata 属性,该属性可以包含客户对象中的任何 JSON 字典 结构客户{让id:字符串让电子邮件:字符串让元数据:[字符串:任何]} {“对象":“客户",“id":“4yq6txdpfadhbaqnwp3",“电子邮件":“john.doe@example.com",“元数据":{"link_id": "链接ID",“购买数量": ..
发布时间:2022-01-31 18:34:28 移动开发

如何在 Swift 中使用 Codable 转换带有可选小数秒的日期字符串?

我正在用 Swift 的 Codable 替换我的旧 JSON 解析代码,并且遇到了一些障碍.我想这不是一个可编码的问题,而是一个 DateFormatter 问题. 从结构开始 struct JustADate: Codable {var 日期:日期} 和一个 json 字符串 让 json = """{“日期":“2017-06-19T18:43:19Z"}""" 现在让我们解 ..
发布时间:2022-01-31 18:15:33 移动开发

使用可编码的值,有时是 Int,有时是 String

我有一个 API,它有时会以 Int 形式返回 JSON 中的特定键值(在本例中为 id),而有时它会以字符串形式返回相同的键值.如何使用 codable 解析该 JSON? struct GeneralProduct: Codable {var 价格:双倍!变量 id:字符串?变量名称:字符串!私有枚举 CodingKeys:字符串,CodingKey {案例价格 = "p"案例ID =“我" ..
发布时间:2022-01-31 13:46:50 移动开发

Swift4 中的 Codable 和 XMLParser

使用 Swift4、iOS11.1、Xcode9.1, 使用新的 Swift4 类型别名“Codable"非常适合 JSON 解码(如此处 或 这里 或许多其他贡献).然而,在 XML 解析方面,我找不到任何关于这种“可编码"协议是否也可以用于 XML 解码的信息. 我尝试使用 XMLParser(可以在下面的 code-excerts 中看到).但是我没有使用“可编码"协议来简化 X ..
发布时间:2022-01-10 20:26:31 其他开发

使用 JSONEncoder 编码/解码符合协议的类型数组

我正在尝试使用 Swift 4 中的新 JSONDecoder/Encoder 找到对符合 swift 协议的结构数组进行编码/解码的最佳方法. 我编了一个小例子来说明问题: 首先我们有一个协议标签和一些符合这个协议的类型. protocol Tag: Codable {变量类型:字符串{获取}var 值:字符串 { 获取 }}结构作者标签:标签{让 type = "作者"让值:字符 ..
发布时间:2021-12-27 15:25:48 移动开发

核心数据中具有自定义类型的所有属性都必须是关系吗?

这是以下如何映射嵌套的复杂 JSON 对象并将它们保存到核心数据?. 想象一下,我的应用程序已经有了这个代码. class 乘客{变量名:字符串变量编号:字符串无功图像:UIImage//初始化方法}班级旅行 {让tripNumber : Int让乘客:乘客init(tripNumber: Int, 乘客: 乘客) {self.tripNumber = tripNumberself.pas ..
发布时间:2021-12-23 14:29:32 移动开发

在继承的 Swift 4 中使用 Decodable

使用类继承是否会破坏类的可解码性.例如下面的代码 class Server : Codable {var id : 整数?}类开发:服务器{变量名称:字符串?var userId : Int?}var json = "{\"id\" : 1,\"name\" : \"大型建筑开发\"}"让 jsonDecoder = JSONDecoder()让 item = 尝试 jsonDecoder.de ..
发布时间:2021-12-02 16:15:49 移动开发

使用 Swift 4 中的 JSONDecoder,缺失的键可以使用默认值而不是可选属性吗?

Swift 4 添加了新的 Codable 协议.当我使用 JSONDecoder 时,它似乎要求我的 Codable 类的所有非可选属性在 JSON 中包含键,否则会引发错误. 让我的类的每个属性都可选似乎是不必要的麻烦,因为我真正想要的是使用 json 中的值或默认值.(我不希望该属性为零.) 有没有办法做到这一点? class MyCodable: Codable {var n ..
发布时间:2021-12-02 16:10:25 移动开发

如何在 Core Data 中使用 swift 4 Codable?

Codable 似乎是一个非常令人兴奋的功能.但我想知道我们如何在 Core Data 中使用它?特别是,是否可以直接从/向 NSManagedObject 编码/解码 JSON? 我尝试了一个非常简单的例子: 并自己定义了Foo: 导入 CoreData@objc(Foo)公共类 Foo: NSManagedObject, Codable {} 但是当像这样使用它时: let ..
发布时间:2021-12-02 15:36:42 移动开发

使用带有有时是 Int 有时是 String 的值的 codable

我有一个 API,它有时会以 Int 形式返回 JSON 中的特定键值(在本例中为 id),而有时它会以字符串形式返回相同的键值.如何使用 codable 解析该 JSON? struct GeneralProduct: Codable {var 价格:双倍!变量 ID:字符串?变量名称:字符串!私有枚举 CodingKeys:字符串,CodingKey {案例价格=“p"案例ID =“我"案例 ..
发布时间:2021-12-02 11:36:07 移动开发