Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТЕМА 11.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
41.68 Кб
Скачать

Текстовые и бинарные файлы

Файлы позволяют пользователю считывать большие объемы данных непосредственно с диска, не вводя их с клавиатуры. Существуют два основных типа файлов: текстовые и двоичные.

Текстовыми называются файлы, состоящие из любых символов. Они организуются по строкам, каждая из которых заканчивается символом «конца строки». Конец самого файла обозначается символом «конца файла». При записи информации в текстовый файл, просмотреть который можно с помощью любого текстового редактора, все данные преобразуются к символьному типу и хранятся в символьном виде.

В двоичных файлах информация считывается и записывается в виде блоков определенного размера, в которых могут храниться данные любого вида и структуры.

Для работы с файлами используются специальные типы данных, называемые потоками. Поток ifstream служит для работы с файлами в режиме чтения, а ifstream в режиме записи. Для работы с файлами в режимах, как записи, так и чтения служит поток ifstream.

В программах на C++ при работе с текстовыми файлами необходимо подключать библиотеки ifstream и iostream.

Для того чтобы записывать данные в текстовый файл, необходимо: 1)описать переменную типа ofstream; 2)открыть файл с помощью функции open; 3)вывести информацию в файл; 4)обязательно закрыть файл.

Для считывания данных из текстового файла, необходимо:

1)описать переменную типа ifstream; 2)открыть файл с помощью функции open; 3)считать информацию из файла, при считывании каждой порции данных необходимо проверять, достигнут ли конец файла; 4)закрыть файл.

Следует отметить, что во всех рассмотренных выше примерах функция fopen() в режимах “r” и “w” открывает текстовый файл на чтение и запись соответственно. Это означает, что некоторые символы форматирования текста, например возврат каретки ‘\r’ не могут быть считаны как отдельные символы, их как бы ни существует в файле, но при этом они там есть. Это особенность текстового режима файла. Для более «тонкой» работы с содержимым файлов существует бинарный режим, который представляет содержимое файла как последовательность байтов, где все возможные управляющие коды являются просто числами. Именно в этом режиме возможно удаление или добавление управляющих символов недоступных в текстовом режиме. Для того чтобы открыть файл в бинарном режиме используется также функция fopen() с последним параметром равным “rb” и “wb” соответственно для чтения и записи.

Функции для работы с файлами: FILE  fopen (char *filename, char *mode)  - Связывает указатель с файлом и открывает файл.

filename-указатель на имя файла.

mode – указатель на строку, содержащую  режим.

Файловый указатель (file pointer) –это указатель на информацию о файле, включающую его имя, статус, текущее расположение 

Указатель файла – это указатель на структуру типа FILE, которая определена в файле stdio.h

Существует два типа файлов:

1)текстовый (text)- последовательность символов, заканчивающаяся двумя символами: перевод строки и возврат каретки;

2)двоичный (binary)- последовательность байтов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]