Qual è la differenza tra l'apertura di un file con ios :: binari o ios :: out o entrambi?

StackOverflow https://stackoverflow.com/questions/2225600

  •  19-09-2019
  •  | 
  •  

Domanda

Sto cercando di capire la differenza tra l'apertura di un file, come:

fstream *fileName*("FILE.dat",ios::binary);

o

fstream *fileName*("FILE.dat",ios::out);

o

fstream *fileName*("FILE.dat",ios::binary | ios::out);

Ho trovato che tutte queste forme sono identiche: in tutti i casi, la stessa uscita sul file viene prodotta utilizzando *fileName*<< o *fileName*.write()

.
È stato utile?

Soluzione

ios::out apre il file in scrittura.

ios::binary si assicura i dati vengono letti o scritti senza tradurre caratteri di nuova riga da e per \r\n al volo. In altre parole, esattamente ciò che si dà il flusso è esattamente quello che c'è scritto.

Altri suggerimenti

L'apertura di un file con ios :: controlli binari come vengono gestiti caratteri di nuova riga. Su Windows, si sono espanse a coppie CRLF. Questo è tutto -. Non ha alcun effetto su come le cose come operatore << lavoro

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top