Как добавить данные в массив JSON Format в swift? - PullRequest
0 голосов
/ 30 апреля 2019

Как добавить одно новое значение в массив JSON, используя следующий формат:

https://next.json -generator.com / api / json / get / NJC7eX-oU

В приведенном выше URL, как добавить массив букв данных ??

{
    "Letters": [
        {
            "Test1": [
                {
                    "Priority": 1,
                    "Description": "A"
                },
                {
                    "Priority": 2,
                    "Description": "B"
                }
            ],
            "Test2": [
                {
                    "Priority": 1,
                    "Description": "A"
                }
            ]
        }
    ]
}

1 Ответ

2 голосов
/ 30 апреля 2019

Вам нужно расшифровать его с помощью

struct Root: Codable {
    var letters: [[String:[Test]]]

    enum CodingKeys: String, CodingKey {
        case letters = "Letters"
    }
}

struct Test: Codable {
    let priority: Int
    let description: String

    enum CodingKeys: String, CodingKey {
        case priority = "Priority"
        case description = "Description"
    }
}

do { 
    var res = try JSONDecoder().decode(Root.self, from:data)

    res.letters.append(["test3":[Test(priority: 6, description: "des")]])

    res.letters[0]["Test2"]?.append(Test(priority: 612, description: "des2"))

    let wer = try JSONEncoder().encode(res)

    let json = String(data: wer, encoding: .utf8)

    print(json)
}
catch {
    print(error)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...