Работа с файлами
Работа с файлами в C++ — важная часть программирования, позволяющая сохранять данные между запусками программы, обмениваться информацией с другими приложениями и обрабатывать большие объемы данных.
Библиотека <fstream> предоставляет три основных класса:
-
ifstream— чтение из файла (Input File Stream). -
ofstream— запись в файл (Output File Stream). -
fstream— комбинированная работа (чтение и запись).
Открытие и закрытие файлов
Открытие файла (ifstream, ofstream)
Перед работой с файлом его нужно открыть. Можно указать путь и режим открытия.
Запись в файл (ofstream)
-
ofstreamсоздает файл, если его нет, или перезаписывает существующий. -
is_open()проверяет успешность открытия. -
close()освобождает ресурсы.
ifstream)
-
ifstreamчитает файл, но не создает его, если его нет. -
getline()считывает строку до символа перевода строки.
Режимы открытия файлов
Файлы можно открывать в разных режимах (флаги):
| Флаг | Описание |
|---|---|
std::ios::in |
Открыть для чтения (по умолчанию ifstream) |
std::ios::out |
Открыть для записи (по умолчанию ofstream) |
std::ios::app |
Дописывать в конец файла (не перезаписывать) |
std::ios::binary |
Открыть в бинарном режиме |
app (добавление в конец)
Без app файл перезапишется, с app — новые данные добавятся в конец.
Обработка ошибок
Проверка состояния файла:
-
good()— файл в хорошем состоянии. -
fail()— ошибка (например, неверный тип данных). -
eof()— достигнут конец файла.
inFile >> number пытается прочитать число, если не получается — цикл прерывается.
Мы разобрали основные идеи работы с файлами на языке программирования C++. Далее, подробнее разберёмся как раотать с текстовыми и бинарными файлами!