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

3.2. Типизированные файлы

Если все операции ввода-вывода с файлом используют данные некоторого определенного типа T, то такой файл называют типизированным. Такому файлу соответствует тип файловой переменной – file of T.

Часто компонентами типизированного файла являются записи.

Пример описания типизированного файла:

type

Student = record name : string[20]; gruppa : string[5]; number: integer; end;

Var

F: file of Student;

Стандартные процедуры и функции работы с типизированными файлами

Assign(F, Str) – процедура определения файловой переменной. F файловая переменная, Str строка, содержащая путь к файлу и его имя.

Rewrite(F) – процедура открытия файла для записи (создание нового файла).

Reset(F) – процедура открытия существующего файла для чтения.

Read(F, P) – процедура чтения данных из файла. P – переменная того же типа, что и компоненты файла.

Write(F, P) – процедура записи данных в файл.

Seek(F, n) – процедура устанавливает указатель текущей позиции файла на компонент с порядковым номером n (n = 0, 1, 2, ). Обеспечивает прямой доступ к данным.

Close(F ) – процедура закрытия файла.

Truncate(F) – процедура уничтожает все компоненты файла, начиная с текущего, и подготавливает файл для записи.

Eof(F) – функция проверки маркера конца файла. Функции возвращает True, если указатель текущей позиции файла находится сразу за по-

следней его компонентой, и False – в противном случае.

FilePos(F) – функция возвращает номер текущего компонента файла.

FileSize(F) – функция возвращает длину файла – количество компонент в файле.

IOResult(F) – функция возвращает код ошибки последней операции ввода-вывода. Если IOResult(F) = 0, операция ввода-вывода успешно завершилась – ошибки нет. Для использования данной функции в программе необходимо отключить системную обработку ошибок ввода-вывода {$I-} перед выполнением операции с файлом, а потом вернуть обработку ошибок системе – {$I+}.

Пример:

var

F: file of byte;

begin

Assign(F, 'MyFile');

{$I-} Reset(F);

{$I+}

if IOResult = 0 then

Writeln('Размер файла в байтах: ', FileSize(F))

else

Writeln('Файл не найден');

end.

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

Текстовый файл – это файл, компонентами которого являются символы. Текстовые файлы – это одна из форм последовательных файлов. Поэтому с ними можно производить те же действия, что и с последовательными файлами.

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

Формат описания файловых переменных текстового файла:

<имя файловой переменной> : text;

Процедуры и функции работы с текстовыми файлами

Assign(F, Str) – процедура определения файловой переменной. F файловая переменная, Str строка, содержащая путь к файлу и его имя.

Rewrite(F) – процедура создания нового файла. Файл открывается для записи. Указатель текущей позиции в файле устанавливается на начало файла.

Append(F) – процедура открытия существующего файла для добавления (записи) данных. Указатель текущей позиции в файле устанавливается на его конец.

Reset(F) – процедура открытия существующего файла для чтения.

Указатель текущей позиции в файле устанавливается на начало файла.

Close(F) – процедура закрытия файла.

Read(F, Ch) – процедура считывания символа из файла. Ch – перемен-

ная типа char.

Write(F, Ch)– процедура записывает символ в файл.

Readln(F, Str)– процедура считывает строку из файла. Str– переменная типа string.

Writeln(F, Str)– процедура записывает строку в файл.

Eoln(F)– функция возвращает True, если указатель текущейпозиции в файле достиг маркера конца строки.

SeekEof(F) – функция возвращает True, если указатель текущей позиции в файле достиг маркера конца файла.

13