DataDecoder
Swift 数据解码器。轻松解码数据值
安装
DataDecoder 通过 CocoaPods 提供。要安装它,只需在 Podfile 中添加以下行:
pod "DataDecoder"
Swift 包管理器
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)
数据解码器
- Nibble
- UInt8/Int8
- UInt16/Int16
- UInt24/Int23
- UInt32/Int32
- UInt48
- UInt64/Int64
- IP 地址转换为字符串值
- MAC 地址转换为字符串值
IEEE-11073
- 16位SFLOAT
- 32位FLOAT
IEEE-754
- Float32
- Float64
作者
本包由Kevin A. Hoogheem开发和维护
许可证
DataDecoder适用于MIT许可证