从NSData字节获取浮点值

时间:2016-04-14 16:26:53

标签: ios swift nsdata

我该怎么写这个

float value = *(float *)[data bytes];

在swift?

感谢。

1 个答案:

答案 0 :(得分:2)

相应的Swift代码是

let value = UnsafePointer<Float>(data.bytes).memory

- 作为您的Objective-C代码 - 假设NSData 对象具有(至少)4个字节,表示浮点值 以主机字节顺序。

  • UnsafePointer<Float>(..)对应于(float *)演员。
  • .memory对应于解除引用运算符*

另一种选择是

var value : Float = 0
data.getBytes(&value, length: sizeofValue(value))