42得票8回答
如何将UIImage转换为Codable?

Swift 4有Codable,非常棒。但是UIImage默认情况下不符合它。我们该怎么做呢? 我尝试使用singleValueContainer和unkeyedContainer extension UIImage: Codable { // 'required' initializ...

42得票3回答
使用JSONEncoder对具有Codable类型的变量进行编码

我成功实现了JSON和plist编码和解码,但是只能通过直接调用特定对象上的编码/解码函数来完成。 例如:struct Test: Codable { var someString: String? } let testItem = Test() testItem.someStri...

41得票6回答
Swift 4 Decodable - 枚举作为键的字典

我的数据结构有一个枚举作为键,我希望下面的代码可以自动解码。这是一个错误还是一些配置问题?import Foundation enum AnEnum: String, Codable { case enumValue } struct AStruct: Codable { let ...

38得票5回答
使用Codable将Swift字符串序列化为JSON时需要进行转义

我试图按照以下方式序列化我的对象: 我正在尝试按照以下方式序列化我的对象:import Foundation struct User: Codable { let username: String let profileURL: String } let user = Us...

38得票1回答
在Swift 4中实现自定义解码器

我想使用Swift 4中引入的新协议Decodable解码一个XML文档,然而,似乎没有现有的实现可以符合Decoder协议。我的计划是使用SWXMLHash库来解析XML,然后可能使该库中的XMLIndexer类扩展Decoder协议,以便我的模型可以用XMLIndexer实例初始化(XML...

37得票4回答
Xcode 9.3 (Swift 4.1)中,Codable没有初始化程序。

Xcode 9.3(使用Swift 4.1)更新后,发现以下问题: 创建一个空项目,在其中添加一个新的.swift文件并创建两个新类: class CodableOne: Codable { let some: String } class CodableTwo: Coda...

35得票3回答
手动解码可选变量的 Swift Codable。

我有以下代码:import Foundation let jsonData = """ [ {"firstname": "Tom", "lastname": "Smith", "age": "28"}, {"firstname": "Bob", "lastname": "Sm...

32得票3回答
协议类型无法符合协议,因为只有具体类型才能符合协议。

在应用程序中,我们有两种类型的贴纸,String类型和Bitmap类型。每个贴纸包都可以包含这两种类型。以下是我声明模型的方式: // Mark: - Models protocol Sticker: Codable { } public struct StickerString: St...

30得票1回答
iOS中Swift语言中可编码属性的通用类型。

我需要为解析JSON获取一个结构体的通用变量,但是我遇到了一个错误: 类型“BaseJsonModel”不符合协议“Codable” 以下是我的结构体: struct BaseJsonStruct<T>: Codable { let info: String ...

29得票8回答
Swift 4 JSON Decodable: 解码类型变更的最简单方法

有了Swift 4的Codable协议,底层有很好的日期和数据转换策略。 给定JSON:{ "name": "Bob", "age": 25, "tax_rate": "4.25" } 我希望你能将它强制转换为以下结构。 struct ExampleJson: D...