При роботі з файловим вводом-виводом дуже важливо знати відмінність між текстовим і двійковим режимами. Текстовий режим був призначений для текстових файлів, в яких є рядки звичайного тексту. Двійковий режим використовується для будь-яких інших і особливо для файлів, які зберігаються у форматах, незручних для читання людиною. Існує деяка особлива тонкість, пов'язана з файлами текстового режиму, на які слід звернути особливу увагу і запам'ятати. Перша з них - символ EOF (26 в коді ASCII або Ctrl+Z) - є міткою (символ) кінця файлу. В текстовому режимі, де зустрічається символ EOF, система C++ низького рівня автоматично просувається до кінця файлу; ви нічого не можете прочитати після спеціального символу. Це може викликати проблеми, якщо такий спеціальний символ виявиться в середині файлу. Інша особливість текстового режиму полягає в тому, як інтерпретуються рядки текстового файлу. Кожний рядок закінчується послідовністю кінця рядка (EOL).
Ознаки файлів.
Ознаки слугують для зміни правил доступу до файлу. Розглянемо деякі з них:
Ознака
Призначення
ios::in
Відкриває файл для читання з нього інформації. Вміст файлу зберігається
ios::out
Відкриває файл для запису інформації. Якщо файл не існує, то буде створений
ios::app
Відкриває файл для дописування інформації. Дані будуть записані в кінець файлу.
ios::trunk
Якщо файл, який відкривають для записування вже існує, то його вміст буде вилучено.