首页 > 解决方案 > 使用 Swift JSON 的 Swift 5 中的 JSON 对象,我如何制作这样的 JSON 对象:

问题描述

如何创建这样的 Json 对象

{
  "child": {
    "0": 0,
    "1": 0
  },
  "child_age": {    
    "0": [0],
    "1":[0]
  }
}

标签: iosjsonswiftobjectswifty-json

解决方案


使用Codable你可以像这样定义你的结构

struct Root: Codable {
    let child: [String: Int]
    let childAge: [String: [Int]]
}

并像这样使用它

let root = Root(child: ["0": 0, "1": 0], childAge: ["0": [0], "1": [0]])

let encoder = JSONEncoder()
encoder.keyEncodingStrategy = .convertToSnakeCase

do {
    let data = try encoder.encode(root)
    if let json = String(data: data, encoding: .utf8) {
        //...
    }
} catch {
    print(error)
}

推荐阅读