我有一个 4 字节数组,需要转换为 float 。转换数组的Python代码如下所示:
import struct
import codecs
byteArray = [125, 29, 2, 64]
hexfloat = ''.join(format(x, '02x') for x in byteArray)
print(struct.unpack('<f', codecs.decode(hexfloat, 'hex_codec'))[0])
应返回:2.0330498218536377
你知道等效的 dart 代码吗?
最佳答案
通常,在 dart 中处理字节所需的所有实用程序都可以在 dart:typed_data
中找到。以下代码与 python 代码等效。
import 'dart:typed_data';
void main() {
final data = [125, 29, 2, 64];
final bytes = Uint8List.fromList(data);
final byteData = ByteData.sublistView(bytes);
double value = byteData.getFloat32(0,Endian.little);
print(value); // 2.0330498218536377
}
关于flutter - 将 4 字节数组转换为 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73081748/