ios - Swift 十六进制转字节 (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[$0..<$0.advanced(by: 2)]), radix: 16) }
}}
推荐阅读
- android - WebView 地理位置仅适用于 Wifi 开启/始终扫描
- node.js - 无法在量角器中找到元素
- android - 即使有意图过滤器,我的应用程序在共享对话框中也不可见
- spring-boot - 存储库层 EntityManager 链式方法的 Mockito 测试用例
- flutter - 从资产中读取 Markdown 文本并将其加载到 Markdown() 小部件中
- c# - 使用可拖动和可调整大小的选择窗口创建自定义图片框
- elasticsearch - 弹性搜索数据上传
- node.js - 无法使用 PM2 和 NodeJS 捕获关闭信号
- python - 如何应用正则表达式来获得具有近似剩余地址匹配的确切门牌号
- excel - 如何在选择中的每个单元格周围添加文本框/形状?