1
にバイナリ読むには:正常に動作しますが、少し面倒ですきれいな方法は、私は現在、これをやっているフロート
let floatData: [UInt8] = [0x00, 0x3F, 0xC0, 0x00, 0x00, 0x66, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x66, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x66, 0x00]
floatData.withUnsafeBufferPointer { (bytes: UnsafeBufferPointer<UInt8>) -> Float in
let byteOffset = 1
var floatBytes : UInt32 = (UInt32(bytes[byteOffset]) << 24)
floatBytes |= (UInt32(bytes[byteOffset+1]) << 16)
floatBytes |= (UInt32(bytes[byteOffset+2]) << 8)
floatBytes |= UInt32(bytes[byteOffset+3])
return Float(bitPattern: floatBytes)
}
を。私はバイトをUnsafeBufferPointer<UInt32>
にキャストしようとしましたが、コンパイラはそれを好まないのです。
欠けているこのビットパターンを抽出するクリーナーの方法はありますか?
おかげ