0 Pluspunkte 0 Minuspunkte
Wie kann ich eine Datei im binären Modus als Bytes (int, float, etc) lesen?
bezieht sich auf eine Antwort auf: Datei lesen und schreiben mit Python
von  

1 Antwort

0 Pluspunkte 0 Minuspunkte

Du kannst die Datei im binären Modus als Bytestream lesen und dann in unterschiedliche Datentypen wie int, float usw. umwandeln.

content = False
with open('datei.bin', 'rb') as file:
    content = file.read()

Dann kannst du die Bytes in Integer

byte_data = content[:4]  # Erste 4 Bytes (32 Bit Integer)
integer_value = int.from_bytes(byte_data, byteorder='big', signed=False)  

oder ein Float umwandeln.

byte_data = content[:4]  # Erste 4 Bytes nehmen (32-bit Float)
float_value = struct.unpack('f', byte_data)[0]

Denke daran, dass du die richtige Anzahl von Bytes auswählen musst, die dem gewünschten Datentyp entspricht (z. B. 4 Bytes für einen int oder einen 32 Bit float). Beachte auch, dass die Reihenfolge der Bytes (Endianness) wichtig sein kann. In den obigen Beispielen habe ich 'big' als Byte-Reihenfolge (Big-Endian) verwendet, aber du kannst 'little' verwenden, wenn die Datei im Little-Endian-Format vorliegt.

von