Swift 数据解码器。轻松解码数据值
DataDecoder 可以通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile 中
pod "DataDecoder"
Swift Package Manager
dependencies: [
.package(url: "https://github.com/FitnessKit/DataDecoder", from: "5.0.0"),
]
Swift4
dependencies: [
.package(url: "https://github.com/FitnessKit/DataDecoder", .branch("swift42")),
]
示例
let sensorData: Data = Data([ 0x02, 0xFE, 0xFF, 0xEF, 0xBE, 0xAD, 0xDE, 0xA5])
var decoder = DecodeData()
let height = decoder.decodeUInt8(sensorData)
let weight = decoder.decodeUInt16(sensorData)
let deadbeef = decoder.decodeUInt32(sensorData)
let nib = decoder.decodeNibble(sensorData)
//This should come back 0 as there is no more data left
let novalue = decoder.decodeNibble(sensorData)
使用可选值的示例
let sensorData: Data = Data([ 0x02, 0xFE, 0xFF, 0xEF, 0xBE, 0xAD, 0xDE, 0xA5])
var decoder = DecodeData()
if let height = decoder.decodeUInt8IfPresent(sensorData) {}
let weight = decoder.decodeUInt16IfPresent(sensorData)
let deadbeef = decoder.decodeUInt32IfPresent(sensorData)
let nib = decoder.decodeNibbleIfPresent(sensorData)
// This will be nil as there is no data left
let novalue = decoder.decodeUInt8IfPresent(sensorData)
此软件包由 Kevin A. Hoogheem 开发和维护
DataDecoder 在 MIT 许可证 下可用