Swift 十六进制转字节 (iOS)
Swift Hex to byte (iOS)
我有十六进制格式的命令(例如 0x01、0x02 等)
如何在xcode中输入它们(什么类型的变量)?以及如何将它们转换成字节来计算校验和(CRC8)?
您可以使用此扩展将十六进制字符串转换回 UInt8 数组:
extension StringProtocol {
var hexa2Bytes: [UInt8] {
let hexa = Array(self)
return stride(from: 0, to: count, by: 2).compactMap { UInt8(String(hexa[[=10=]..<[=10=].advanced(by: 2)]), radix: 16) }
}}
我有十六进制格式的命令(例如 0x01、0x02 等)
如何在xcode中输入它们(什么类型的变量)?以及如何将它们转换成字节来计算校验和(CRC8)?
您可以使用此扩展将十六进制字符串转换回 UInt8 数组:
extension StringProtocol {
var hexa2Bytes: [UInt8] {
let hexa = Array(self)
return stride(from: 0, to: count, by: 2).compactMap { UInt8(String(hexa[[=10=]..<[=10=].advanced(by: 2)]), radix: 16) }
}}