首页 > 解决方案 > Swift 十六进制转字节 (iOS)

问题描述

我有十六进制格式的命令(例如 0x01、0x02 等)

如何在 xcode 中输入它们(什么类型的变量)?以及如何将它们转换为字节来计算校验和(CRC8)?

标签: iosswiftxcodehexcrc

解决方案


您可以使用此扩展将您的六进制字符串转换回 UInt8 数组:

extension StringProtocol {
    var hexa2Bytes: [UInt8] {
        let hexa = Array(self)
        return stride(from: 0, to: count, by: 2).compactMap { UInt8(String(hexa[$0..<$0.advanced(by: 2)]), radix: 16) }
    }}

推荐阅读