hex direkt in datei schreiben
-
Hi !!
Ich will eine Tiff Datei erzeugen und möchte dafür als erstes den Header in die Datei schreiben.
Die ersten 4 Bytes sehen so aus: 4d 4d 00 2a.
ich habs folgendermaßen versuch:
ofstream ofl("out.tiff", ios::binary); ofl << 0x4d4d002a; ofl.close();
Wenn ich mir die entstandene Datei nun anschaue so hat das erste Byte noch den Wert 4d, das zweite aber nicht mehr.
also dachte ich es müsste zumindest so gehen:
ofstream ofl("out.tiff", ios::binary); ofl << 0x4d << 0x4d << 0x00 << 0x2a; ofl.close();
doch auch so scheint es nicht zu funktionieren.
Wie geht es richtig?
Hab die Suchfunktion schon bemüht, doch kann nicht wirklich was passendes finden.
Über den Umweg einer temporären char-Variable, der Byte für Byte zugewiesen und ausgegeben wird läufts, aber ich hab noch die Hoffnung, daß es eleganter geht.Grüße!
-
Dazu musst du Binär I/O benutzen.
int i=0xdeadbeaf; ofl.write(static_cast<char*>(&i),sizeof(i));