Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
вот оно.docx
Скачиваний:
6
Добавлен:
25.09.2019
Размер:
1.75 Mб
Скачать

10) Процедура Close(f)

Процедура Close(F) – закрывает открытый файл F. Рассмотрена ранее при рассмотрении файлов с типом (см. подразд. 5.3). Особенностей для текстовых файлов нет.

Пример 5.8.

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

Var

F: Text;

Begin

Assign (F, ’Data.txt’); Rewrite (F);

Write (F, A);

Reset (F);

Read (F, B);

Close (F);

Append (F);

Write (F, C);

Close (F);

End.

11) Процедура SetTextBuf (f, Buf [, Size])

Процедура SetTextBuf (F, Buf [, Size]) – определяет буфер для текстового файла.

Процедуру следует вызывать после процедуры Assign, но до других

процедурввода-вывода. Здесь F – имя текстового файла, Buf – любая переменная (вкачестве

формального параметра используется параметр- переменная без типа), Size – необязательное выражение типа Word.

Обмен информацией между программой и внешним набором данных осущетвляется через буфер ввода-вывода. Это участок оперативной памяти. Размер стандартного буфера ввода-вывода, принятый по умолчанию, – 128 байт. Каждому открытому файлу назначается свой буфер.

Процедуры Write и Writeln записывают очередные элементы файла последовательно в буфер. После того, как буфер будет полностью заполнен,

произойдет физическая запись содержимого буфера во внешний файл. После этого буфер освобождается для приема следующей порции информации. Аналогично при чтении. Из внешнего файла одновременно считывается

количество элементов, помещающееся в буфер. Процедуры Read и Readln

читают элементы последовательно из буфера.

Использование буфера ввода-вывода позволяет существенно повысить

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

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

файлов, он назначается при открытии файла).

Для большинства прикладных программ размер

стандартного буфера

ввода-вывода (128 байт) оказывается достаточным. Однако, если в программе

имеется большое количество операций ввода-вывода, то более эффективным оказывается использование буфера большего размера, так как это позволяетсократить время обращения к внешним наборам данных. Процедура SetTextBuf назначает текстовому файлу F свой буфер ввода- вывода, определяемый параметром Buf. Размер буфера в байтах определяется параметром Size.Если параметр Size опущен, то по умолчанию размер буфера принимается равным Sizeof (Buf), то есть вся область памяти, занимаемая параметром Buf, используется как буфер. Если параметр Size не опущен, он не должен превышать размеры переменной Buf.Процедуру SetTextBuf нельзя применять к открытому файлу (она должна применяться после процедуры Assign и до процедур Reset, Rewrite или Append).

Процедура SetTextBuf определена только для текстовых файлов.

Процедура Flush (F)

Процедура Flush (F) – очищает буфер текстового файла, открытого для вывода процедурой Rewrite или Append. По данной процедуре информация из буфера, независимо от степени его заполнения (заполнен он полностью или частично), записывается во внешний файл.Данная процедура используется редко в прикладных программах – для очень важных результатов, если нужно подтверждение о физической записи во

внешний файл. Процедура определена только для текстовых файлов.

Функция Eof (F)

Функция Eof (F) – конец файла.

Рассмотрена ранее при рассмотрении файлов с типом (см.подразд. 5.3).

Функция Eoln (F)

Функция Eoln (F) – конец строки.

Рассмотрена в начале данного подраздела.

Функция Seekeof (F)

Функция Seekeof (F) – устанавливает файл F в состояние “конец файла”.

Аналогична функции Eof, но пропускает все пробелы, метки табуляции и маркеры конца строки.Обычно может использоваться при считывании числовых значений из текстового файла.

Определена только для текстовых файлов. Файл должен быть открыт.

Функция Seekeoln (F)

Функция Seekeoln (F) – устанавливает файл F в состояние “конец строки”.

Аналогична функция Eoln, но она пропускает все пробулы и метки табуляции. Используется при считывании существующего текстового файла

числовых данных.

Определена только для текстовых файлов. Файл должен быть открыт.