Ho un'immagine jpeg in un buffer char [] in memoria, tutto ciò che devo fare è scriverlo sul disco esattamente come è. In questo momento mi sto facendo questoPerché il metodo C++ ofstream write() modifica i miei dati grezzi?
ofstream ofs;
ofs.open(filename);
ofs.write(buffer, bufferLen);
ofs.close();
ma l'immagine non viene fuori a destra, sembra confuso con strisce bianche e nere casuali ovunque. Dopo aver confrontato l'immagine con l'originale in un visualizzatore esadecimale, ho scoperto che ofstream sta modificando i dati quando pensa che sto scrivendo un carattere di nuova riga. Ogni volta che 0x0A compare nell'originale, il ofstream scrive come due byte: 0x0D0A. Devo supporre che ofstream abbia intenzione di convertire da LF solo a CRLF, c'è un modo standard per farlo non farlo?
Grazie sapevo che doveva essere qualcosa di semplice –