bytesToFloat64 static method
Convert bytes to 64-bit double (Float64/Double).
Parameters:
bytes: 8 bytes in big-endian formatbyteOrder: Word order (default: ByteOrder.bigEndian)
Returns: 64-bit floating point number
Implementation
static double bytesToFloat64(Uint8List bytes, {ByteOrder byteOrder = ByteOrder.bigEndian}) {
if (bytes.length < 8) {
throw ArgumentError('Requires at least 8 bytes for Float64');
}
final data = ByteData.sublistView(bytes);
if (byteOrder == ByteOrder.bigEndian) {
return data.getFloat64(0, Endian.big);
} else {
// Swap all 4 words for little endian
final result = ByteData(8);
for (int i = 0; i < 4; i++) {
result.setUint16(i * 2, data.getUint16((3 - i) * 2, Endian.big), Endian.big);
}
return result.getFloat64(0, Endian.big);
}
}