Как конвертировать байты в массив swift - PullRequest
0 голосов
/ 26 апреля 2019

Мне нужно отправить массив через HTTP моему swift-клиенту, но я не уверен, как преобразовать полученные байты в swift-массив.

Я смотрел его в Google несколько раз с несколькими разными способами сказать, что я пытаюсь сделать, но все, что я получаю, - это темы, в которых говорится "преобразовать массив байтов в строку быстрого доступа"

AF.request(exampleUrl).response { response in
    if let data = response.data, let s = String(data: data, encoding: .utf8) {
        debugPrint(s)
        let myArray = decodeSomehow(data: data)
        debugPrint(myArray[0]) // hooray
    }
}

Мне нужно иметь возможность декодировать массивы, отправленные с моего сервера, но мои попытки найти решение этой проблемы не дали результатов.

Кстати, сервер сделан с функциями Firebase и запущен на веб-сайте Google и закодировано с машинописью

также, чтобы уточнить, я не хочу брать байты и помещать их в массив, я хочу декодировать байты в то, что они изначально были на сервере, иначе как массив (изначально массив машинописного текста, но если это возможно сделать это быстрый массив, который будет ?)

Ответы [ 3 ]

0 голосов
/ 26 апреля 2019

Надеюсь, это поможет ... (Спасибо LEO за ваш лучший комментарий)

let string = "Hello World"
print(Array(string.utf8)) 
0 голосов
/ 26 апреля 2019

Я понял, как сделать то, что я пытался сделать ... В конце концов, я решил свою проблему LOL

все, что мне нужно было сделать, это декодировать его с помощью swiftyjson

спасибо всем за ответы

AF.request(exampleUrl).response { response in
    if let data = response.data, let s = String(data: data, encoding: .utf8) {
        let arr = JSON(data)
        debugPrint(arr)
        debugPrint(arr[0][0])
        debugPrint(s)
    }
}

выход

0 голосов
/ 26 апреля 2019

Класс Data является расширенной версией [UInt8]. Обычно рекомендуется работать напрямую с классом Data. Если вы действительно хотите преобразовать его в [UInt8], просто

let arr = [UInt8](data)

или

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