Как декодировать JSON с целым числом в качестве ключа в Swift 4? - PullRequest
0 голосов
/ 08 ноября 2018

enter image description here

Как видите, данные правой руки имеют такие клавиши, как "7", "8" и т. Д. Теперь я знаю, что это не совсем "целые числа", потому что это числа в строке. Однако когда я их декодирую , Мне нужно использовать это имя ключа в качестве имени переменной . Но у нас не может быть числа в качестве имени переменной.

Что мне делать в этом случае? Как мне это расшифровать?

Просто лучше заново создать набор данных, чтобы в нем не было номера в качестве ключа? Но тогда, что люди делают, когда у них нет контроля над набором данных?

Весь код слишком длинный и не имеет значения, поэтому я просто сделал снимок экрана. Если вы хотите, вы можете увидеть данные JSON здесь https://api.myjson.com/bins/11r19i

1 Ответ

0 голосов
/ 08 ноября 2018

Вы можете использовать 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, вы должны быть в состоянии распознать его сейчас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...