我需要通过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前端上运行 并用打字稿编码
还要澄清一下,我不想将字节放入数组中,我想将字节解码为它们在服务器上的原始名称,也就是数组(最初是打字稿数组,但是如果可以它是一个迅速的数组)
答案 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)
}
}