我已经看到了几个类似的问题,但我有不同的JSON
所以我有如下所示的 JSON
var json = """
{
"Array1": [
{
"FinancialYear": "17-18"
}],
"Array2": [
{
"FinancialYear": "17-18"
}]
}
"""
问题是 Array1 和 Array2 键似乎是动态的,它位于 ROOT 中,可能更像 Array3、Array4 等
我想使用Codable,但由于根目录(Array1,Array2)的动态键,我无法摆脱它。
这是我尝试过但不起作用的结构
struct CodableJSON: Codable {
var response:[String:[ArrayInside]]
enum CodingKeys: String, CodingKey {
case response = "What should I write here ?" // What should be here ?
}
}
在这种情况下,仅声明ArrayInside
结构
struct ArrayInside: Decodable {
...
}
并将根对象解码为字典
let result = try JSONDecoder().decode([String:[ArrayInside]].self, from: data)