使用键以数字开头的Swift解码json [英] Swift decode json with key starting as a number
本文介绍了使用键以数字开头的Swift解码json的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有以下格式的json:
I have a json in following format:
let json = """
{
"stuff": {
"1": "one",
"2": "two",
"4": "four"
}
}
问题是我该怎么做
struct Stuff: Codable, Equatable {
let 1: String
let 2: String
let 4: String
}
编译工作吗?
我经常在下面用它来调用它,它对所有内容都适用,但如果让名字以数字开头,显然就不能编译
i use to call this with below, and it works fine for everything but if let name starts with number it obviously won't compile
let obj = try? JSONDecoder().decode(T.self, from: data)
推荐答案
您不能.变量不能以数字字符开头.不变的规则.
You can't. A variable must not start with a numeric character. Unalterable rule.
但是您可以使用CodingKeys
struct Stuff: Codable, Equatable {
let one, two, four: String
private enum CodingKeys : String, CodingKey { case one = "1", two = "2", four = "4"}
}
这篇关于使用键以数字开头的Swift解码json的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文