
- •Описание записи (record).
- •Работа с файлами. Общие сведения о файлах.
- •Процедуры и функции для работы с файлами.
- •Особенности обработки типизированных файлов.
- •Создание файла.
- •3. Добавление записей к файлу (в конец файла)
- •If {…запись не удаляется…}
- •Корректировка с использованием последовательного доступа.
- •If {запись не корректируется}
- •If { корректировка подтверждена }
- •О взаимосвязи записей основного обрабатываемого файла и записей файлов-справочников
- •Файлы без типа.
Особенности обработки типизированных файлов.
Файл с типом (типизированный файл) состоит из последовательности записей одинаковой длины и одинакового внутреннего формата.
Записи следуют непрерывно друг за другом. Первые 4 байта первого сектора файла содержат количество и длину записи. К файлам с такой организацией можно обращаться и последовательно, и выборочно, т.е. прямым доступом.
При последовательном доступе (при формировании содержания файла) записи располагаются на внешнем носителе последовательно в порядке их поступления, т.е. запись i+1 компонента в файл возможна только после i–ого компонента. Аналогично осуществляется доступ к компонентам при чтении.
При прямом доступе поиск требуемой записи производится по её номеру процедурой SEEK (имя_файла_в_программе, номер_компонента) ; после чего возможна непосредственная работа с ней (чтение – запись).
Общий вид описания типизированного файла:
TYPE
Идентификатор_типа = FILE OF тип_компонента;
Например:
TYPE
T = FILE OF REAL;
VAR
F: T;
VAR
F: FILE OF REAL;
TYPE
ST= RECORD
A: STRING [10];
B: INTEGER;
C: REAL;
D: BYTE
END;
VAR
DAN: FILE OF ST;
ZAP : ST;
Процедуры чтения и записи для файлов с типом - READ и WRITE. Кроме того, используются процедуры и функции ASSIGN, RESET, REWRITE, SEEK, CLOSE, FILEPOS, FILESIZE, EOF.
Процедура TRUNCATE обрезает файл на заданной файловой позиции, последующие записи уничтожаются.
Варианты технологии работы с типизированным файлом последовательным доступом.
К стандартным действиям, выполняемым над файлом и его записями, относятся:
1) создание файла;
2) вывод файла на экран и/или печать, «распечатка» файла;
3) добавление записи в файл – в конец файла или на заданное место, если файл рассортирован;
4) удаление заданной записи из файла;
5) корректировка заданной записи (изменение полей записи и возврат её на прежнее место);
6) собственно обработка файла в соответствии с постановкой задачи.
Совокупность этих действий может быть названа ведением файла.
Согласно правилам структурного и модульного программирования для реализации рассматриваемых действий необходимо создавать специализированные подпрограммы, образующие пакет программ соответствующего назначения. Управление таким пакетом осуществляется, как правило, в диалоговом режиме с использованием меню.
Возможны две технологии операций с записями файла:
- с использованием другого файла;
- с использованием оперативной памяти для временного хранения записей файла на период работы с ними.
Использование второго файла.
Схема с использованием второго файла может применяться в следующих случаях:
1) добавление записи в файл –
в конец файла или
на заданное место, если файл рассортирован;
2) удаление заданной записи из файла;
3) корректировка заданной записи (изменение значений полей записи и возврат её на прежнее место).
Далее рассматриваются алгоритмы действий ведения файла. При создании пакета ведения типизированного файла рекомендуется выполнить рассматриваемые действия и желательно в той же последовательности. Для работы с текстовыми файлами все эти алгоритмы также применимы, но с учётом особенностей работы с данным типом записей.