Что является различием между открытием файла с iOS:: двоичный файл или iOS:: или оба?

Я пытаюсь выяснить различие между открытием файла как:

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

или

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

или

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

Я нашел, что все эти формы идентичны: во всех случаях тот же вывод на файле производится с помощью также *fileName*<< или *fileName*.write().

18
задан Jamal 2 December 2015 в 00:58
поделиться

2 ответа

ios :: out открывает файл для записи.

ios :: binary обеспечивает чтение или запись данных без перевода символов новой строки в и из \ r \ n на лету. Другими словами, именно то, что вы даете потоку, - это именно то, что написано.

24
ответ дан 30 November 2019 в 08:10
поделиться

Открытие файла с помощью ios :: binary контролирует, как обрабатываются символы новой строки. В Windows они расширяются до пар CRLF. Вот и все - это не влияет на работу таких вещей, как operator <<.

5
ответ дан 30 November 2019 в 08:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: