Файловый ввод-вывод в текстовом и двоичном режиме
Операции файлового ввода-вывода выполняются в одном из двух режимов преобразования, текстовом или двоичном, в зависимости от режима, в котором этот файл открыт. Файлы данных часто обрабатываются в текстовом режиме. Для управления режимом преобразования файла можно:
Сохранить текущий параметр по умолчанию и указывать альтернативный режим только при открытии выбранных файлов.
Используйте функцию
_set_fmode
, чтобы изменить режим по умолчанию для только что открытых файлов. Используется_get_fmode
для поиска текущего режима по умолчанию. Начальный параметр по умолчанию — текстовый режим ANSI (_O_TEXT
).Измените режим перевода по умолчанию напрямую, задав глобальную переменную
_fmode
в программе. Значение этой переменной устанавливается функцией_set_fmode
, но его можно также задать непосредственно.
При вызове функции открытия файла, например _open
, fopen
, fopen_s
, freopen_s
_fsopen
freopen
или _sopen_s
, можно переопределить текущий параметр _fmode
по умолчанию, указав соответствующий аргумент функции._set_fmode
Потоки stdin
, stdout
и stderr
по умолчанию всегда открываются в текстовом режиме; можно также переопределить это значение по умолчанию при открытии любого из этих файлов. Используется _setmode
для изменения режима перевода с помощью дескриптора файла после открытия файла.
См. также
Входные и выходные данные
Универсальные подпрограммы среды выполнения C по категориям