Файл
Тип-файл представляет собой последовательность компонент одного типа, расположенных на внешнем устройстве. Компоненты могут быть любого типа, за исключением типа-файла. Число компонент в файле не объявляется и может быть произвольным.
Важность понятия файла обусловлена следующими основными причинами:
1) программы могут быть связаны с окружающей средой только с помощью файлов;
2) программы составляются, как правило, с целью изменения или получения данных, содержащихся в файлах;
3) файлы являются средством хранения большого объема информации.
Файл в общем случае состоит из нескольких компонент (элементов) и в языке Паскаль представляется переменной. Эта переменная может существовать как до, так и после выполнения программы.
Файловый тип определяется в программе с помощью соответствующего описания:
ТУРЕ
(ИМЯ-ФАЙЛА) = FILE OF (ТИП-ЭЛЕМЕНТОВ);
Например,
TYPE
F:file of real;
Или определение типов
CONST
МАХ = 8O;
TYPE
М=1..МАХ;
F=ARRAY [M] OF CHAR;
FF=FILE OF F;
задаст файл FF, элементами которого могут быть массивы символов длиной М (1 < M < 80).
Переменная, имеющая смысл файла, описывается в разделе переменных:
VAR
SPISOK: FF;
A, B, C: f ;
Тип-файл можно определять и непосредственно при введении файловых переменных:
var
F1, F2: file of Integer;
Структурно файл организован как последовательность элементов, идущих друг за другом. Располагается (хранится) файл на внешних носителях информации. Однако при написании программы физическая природа файлов не учитывается. Привязка реальных файлов к программе осуществляется операционной системой.
Над файлами можно выполнять некоторые действия: запись (создание и пополнение файла) и чтение. Операция записи добавляет к файлу новую компоненту. Новые элементы могут добавляться только к концу файла, который называется в данном случае последовательным файлом.
Перед началом работы с файлом необходимо связать файловую переменную с именем файла:
ASSIGN (F, ‘C:\ n’), где F – имя файловой переменной.
Процедура Аssign связывает имя внешнего файла (того файла, с которым мы будем работать) с файловой переменной F:
После установления связи внешнего файла с файловой переменной внешний файл надо открыть для записи или чтения. При открытии файла выполняются необходимые системные операции, подготавливающие файл к записи или считыванию информации.
ЗАПИСЬ В ФАЙЛ.
Операция установки маркера на начало файла и приготовления его для записи информации выполняется с помощью вызова стандартной процедуры REWRITE (SPISOK)
Эта операция одновременно уничтожает всю имеющуюся в данный момент в файле SPISOK информацию.
Для записи компоненты в файл используется процедура WRITE.
WRITE(SPISOK, A[i]).
ЧТЕНИЕ ФАЙЛА.
Перед чтением информации из файла необходимо предварительно выполнить процедуру
RESET (‘ИМЯ-ФАЙЛА’),
которая переместит маркер файла, не изменяя файл, на его начало.
Для чтения компоненты файла можно использовать процедуру READ: READ (SPISOK, BUF)
Для определения этого состояния можно использовать стандартную булеву функцию EOF (‘ИМЯ-ФАЙЛА’). Функция EOF имеет два значения в зависимости от одной из следующих ситуаций:
В случае, когда файл оказывается пустым, значение функции EOF (SPISOK) будет равно TRUE непосредственно после вызова процедуры RESET (SPISOK).
Пример Имеется два отсортированных файла целых чисел:
f1, f2, …, fm и g, g2 ... gn,
Осуществить слияние файлов f и g в отсортированный файл h.
Решение этой задачи может быть получено простым сравнением следующих друг за другом элементов f и g. Меньший из них передается в h и происходит сдвиг по файлу, из которого был взят этот элемент, а также
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.