我在swift中将UInt8字节数组转换为字符串时遇到了问题。我已经找到了一个简单的解决方案
String.stringWithBytes(buff, encoding: NSUTF8StringEncoding)但它显示错误String.type没有成员stringWithBytes。有人能给我一个解决方案吗?
这是我的代码,我得到一个NSData,并将其转换为字节数组,然后我必须将该字节数组转换为字符串。
let count = data.length / sizeof(UInt8)
var array = [UInt8](count: count, repeatedValue: 0)
data.getBytes(&array, length:count * sizeof(UInt8))
String.stringWithBytes(buff, encoding: NSUTF8StringEncoding)发布于 2016-07-17 17:25:42
Swifty解决方案
array.reduce("", combine: { $0 + String(format: "%c", $1)})十六进制表示法:
array.reduce("", combine: { $0 + String(format: "%02x", $1)})发布于 2020-04-17 02:52:49
Swift 5.2.2更新:
String(decoding: yourByteArray, as: UTF8.self)发布于 2016-04-27 06:15:19
这对我很有效:
String(bytes: bytes, encoding: NSUTF8StringEncoding)https://stackoverflow.com/questions/29643986
复制相似问题