📜  如何从 NSData swift 中接收十六进制值(1)

📅  最后修改于: 2023-12-03 14:51:45.833000             🧑  作者: Mango

如何从 NSData swift 中接收十六进制值

在 Swift 中,将 NSData 转换为十六进制字符串非常简单。你可以使用以下代码将 NSData 转换为十六进制字符串:

let data = NSData(bytes: [0x41, 0x42, 0x43] as [UInt8], length: 3)
let hexString = data.map { String(format: "%02hhx", $0) }.joined()
print(hexString) // 输出字符串 "414243"

这里创建了一个 NSData 对象,并将其转换为一个包含十六进制值的字符串。这是通过使用 map 函数和格式化字符串实现的。

如果你想将一个十六进制字符串转换为 NSData 对象,你可以使用以下代码:

let hexString = "414243"
let data = hexString.data(using: .ascii)
print(data?.description ?? "") // 输出 "<414243>"

这里创建了一个包含十六进制值的字符串,并将其转换为 NSData 对象。这是通过使用 data 函数和字符串编码参数实现的。

无论是将 NSData 转换为十六进制字符串还是将十六进制字符串转换为 NSData 对象,都可以使用上述代码来实现。