json - 如何在 Swift 4 中以整数为键解码 JSON?
问题描述
如您所见,右侧数据具有“7”、“8”等键......现在我知道这些不是“整数”,因为它们是字符串中的数字。但是,当我解码它们时,我需要使用该键名作为变量名。但是,我们不能将数字作为变量名。
在这种情况下我该怎么办?我该如何解码?
重新创建数据集以使其没有数字作为键是否更好?但是,当人们无法控制数据集时,他们会怎么做?
整个代码太长而且无关紧要,所以我只是截屏了。如果需要,可以在此处查看 JSON 数据 https://api.myjson.com/bins/11r19i
解决方案
您可以使用CodingKey
来实现这一点。
struct bus: Codable {
var one: String?
var two: String?
var three: String?
enum CodingKeys: String, CodingKey {
case one = "1"
case two = "2"
case three = "3"
}
}
它将解码每个内部的那些密钥case
,您现在应该能够识别。
推荐阅读
- javascript - 静态站点生成器 11ty 中的自定义暗模式
- java - Launch4j Maven 插件版本 2.0.1 找不到或加载主类
- winappdriver - 如何使用 WinAppDriver 在 Modal 窗口的 Modal 窗口中定位元素
- java - 安装程序后打开程序时出现主要 Claas 错误
- c# - .NET Core 的双重麻烦:0.0 与 -0.0
- c++ - 我想打印一个和零的模式
- java - 使用来自 ByteBuffer 的消息摘要计算校验和
- php - LdapRecord 没有从 Laravel-permissions 获得任何权限
- react-native - react-native,Android Freshchat isFreshchatNotification 未处理 Firebase 远程消息
- java - spring boot 2.4.0 或更高版本中的多文档属性和配置文件