Программирование и основы алгоритмизации. Макаров В.Л. - 87 стр.

UptoLike

Составители: 

87
14. Работа с файлами
Файлы предназначены для постоянного хранения больших объемов данных,
так как хранение данных в переменных и массивах является временным. Суще-
ствует множество способов организации записей в файле, но наиболее распро-
страненными являются [4]:
1. Файлы последовательного доступа.
2. Файлы произвольного доступа.
В файлах последовательного доступа записи хранятся в последовательно-
сти, соответствующей ключевому полю
. Например, в платежной ведомости за-
писи располагаются в последовательности, соответствующей идентификацион-
ному номеру служащего. Первая запись содержит наименьший
идентификационный номер, а последующие записи располагаются в порядке
возрастания идентификационных номеров (ключей). Ключ показывает, что за-
пись относится к конкретному объекту, т. е. является уникальной среди других
записей в файле. Структура файла
последовательного доступа задается про-
граммистом в соответствии с требованием прикладных программ, так как язык
С++ не предписывает никаких требований к структуре файла. При этом могут
быть использованы следующие классы файлового ввода-вывода:
ifstreamфайлы для чтения ;
ofstream файлы для записи ;
fstreamфайлы для чтения и записи.
Чтобы приступить
к записи в файл, нужно сначала создать объект ofstream,
а затем связать его с определенным файлом на диске. В заголовке программы
необходимо включить файл заголовка fstream.h, вместо файла iofstream.h,
поскольку этот файл уже содержится в файле fstream.h. Для открытия файла в
режиме диалога c помощью объекта ofstream нужно объявить экземпляр этого
объекта, передав
ему в качестве параметра переменную fname, определяющую
имя файла ofstream fout ( fname);. Открытие файла для чтения выполняется
аналогичным образом, за исключением того, что для этого используется объект
ifstream fin (fname);. В этих выражениях задаются имена объектов fout и fin,
которые можно использовать так же, как объекты cout и cin соответственно. По
завершении работы с файлом
(записи или чтения информации) его нужно за-
крыть с помощью функции close().
Пример программы создания простейшего файла последовательного доступа
для чтения и записи показан на рис. 14.1.
1. #include <conio.h>
2. #include <fstream.h>
3. void main()
4. {
5. clrscr();
6. cout << "Введите имя файла для ввода: ";
Рис. 14.1