如何将字节转换为Swift数组

时间:2019-04-26 03:42:37

标签: swift

我需要通过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
    }
}

我需要能够解码从服务器发送的阵列,但是我为解决此问题找到解决方案的努力没有结果。

btw服务器由firebase功能制成,并在Google前端上运行 并用打字稿编码

还要澄清一下,我不想将字节放入数组中,我想将字节解码为它们在服务器上的原始名称,也就是数组(最初是打字稿数组,但是如果可以它是一个迅速的数组)

3 个答案:

答案 0 :(得分:0)

Data类是[UInt8]的高级版本。通常,建议直接使用Data类。如果您确实要将其转换为[UInt8],只需

let arr = [UInt8](data)

let arr = Array(data)

答案 1 :(得分:0)

希望对您有帮助...(感谢LEO的最佳评论)

let string = "Hello World"
print(Array(string.utf8)) 

答案 2 :(得分:0)

我弄清楚该怎么做... 最后,我解决了自己的问题哈哈

我要做的就是用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)
    }
}

output