Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
20
Добавлен:
20.04.2015
Размер:
59.9 Кб
Скачать

Работа с файлами

Определение

Файл – это последовательность компонентов, имеющих одинаковый тип

Файлы хранятся на вспомогательных запоминающих устройствах

Сравнение с массивами

Сходство: файлы и массивы представляют собой совокупности компонентов имеющих одинаковый тип

Отличия

Файлы могут существовать после завершения программы, а массивы нет

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

Файлы обеспечивают как последовательный, так и прямой доступ; массивы – только прямой

Классификация файлов

Текстовый файл – состоит из строк символов.

Обычно такие файлы представляют последовательный доступ

Бинарные файлы (или файлы общего вида) – создаются программой и содержат произвольную двоичную информацию

Классификация файлов

Например: Необходимо записать в файл число 234

Текстовый файл: записываются в файл последовательно символы 2, 3, 4, т.е. 00110010 00110011 00110100

Бинарный файл: Записывается его внутреннее двоичное представление 0000000011101010

Текстовый файл

Заголовочный файл:

#include <stdio.h>

Указатель на поток:

FILE *f

Поток – это файл, вместе с предоставляемыми средствами буферизации

Текстовый файл

Значение указателя

f = fopen(имя_файла, режим)

Режимы открытия:

“w” – файл открывается для записи. Содержимое файла при этом стирается

“r” – существующий файл открывается только для чтения

“a” - файл открывается для добавления информации в конец файла

Текстовый файл

Режимы открытия:

“w+”- файл открывается для записи и последующих исправлений. Предыдущее содержимое файла при этом стирается

“r+”-существующий файл открывается как для чтения, так и для записи в любом месте файла. Невозможна запись только в конец файла

“a+” – файл открывается или создается для записи и чтения в любом месте файла. Содержимое файла сохраняется

Функции работы с файлами

FILE *F1,*F2;

//проверяем существует ли файл

if ((F1=fopen(“data.txt”,”r”))==NULL)

{

cout<<‘file not found’; return 0;

}

Соседние файлы в папке лекции