在飞镖中将整数位模式解析为 IEEE 754 浮点数
Parsing integer bit-patterns as IEEE 754 floats in dart
我正在通过接口(蓝牙、列表)获取 4 个字节的数据。数据表示 IEEE 754 浮点数(例如 0x3fd0a3d7
,表示大约 1.63
作为 binary32 float
)
dart lang 中有没有办法将其转换/类型双关为 float 然后加倍?类似于 Java 中的 intBitsToFloat
。找不到任何东西。还是我只需要自己编写 IEEE 754 解析?
这是有效的,只需导入 dart:typed_data
库:
var bdata = ByteData(4);
bdata.setInt32(0, 0x3fd0a3d7);
print(bdata.getFloat32(0)); //Prints: 1.6299999952316284
(我不确定这是最可靠的方法)
我正在通过接口(蓝牙、列表)获取 4 个字节的数据。数据表示 IEEE 754 浮点数(例如 0x3fd0a3d7
,表示大约 1.63
作为 binary32 float
)
dart lang 中有没有办法将其转换/类型双关为 float 然后加倍?类似于 Java 中的 intBitsToFloat
。找不到任何东西。还是我只需要自己编写 IEEE 754 解析?
这是有效的,只需导入 dart:typed_data
库:
var bdata = ByteData(4);
bdata.setInt32(0, 0x3fd0a3d7);
print(bdata.getFloat32(0)); //Prints: 1.6299999952316284
(我不确定这是最可靠的方法)