Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
5 Методическое пособие изучения Паскаль.doc
Скачиваний:
10
Добавлен:
01.03.2025
Размер:
743 Кб
Скачать
☆

13.3. Запись файла.

Под записью файла понимается вывод результатов программы из оперативной памяти ЭВМ на диск, т. е. создание нового файла на внеш­нем устройстве. В программе необходимо выполнить следующие дей­ствия для записи файла:

- открыть файл для записи (оператор REWRITE);

- вывести данные (оператор WRITE);

- закрыть файл для записи (оператор CLOSE).

Внешний файл, в который записываются данные из программы, часто называют выходным. Общая форма записи файла имеет вид:

REWRITE (имя 1),

…

WRITE (имя 1, параметры);

…

CLOSE (имя 1);

В некоторых версиях языка ПАСКАЛЬ оператор REWRITE может содержать несколько аргументов, например:

REWRITE (имя 1, 'имя 2', 'имя 3', имя 4).

Параметры имеют следующее назначение:

имя 1 - имя файла в программе (файловая переменная);

'имя 2' - физическое имя внешнего файла;

'имя 3 - расширение имени внешнего файла; рекомендуется использовать слово PAS (от слова PASCAL);

имя 4 - переменная, означающая размер создаваемого внешнего файла; размер, выраженный в блоках, задает пользователь ЭВМ.

Параметры - выводимые данные (например, константы или пере­менные). Оператор вывода данных на внешний файл обладает всеми свойствами обычного оператора вывода WRITE. Рассмотрим на при­мере назначение операторов REWRITE, WRITE, CLOSE.

Пример 13.2. Пусть в программе переменные А и В получают сле­дующие значения А = 510, В = 16,2. Записать на диск в выходной файл с именем F2 строку значений А и В в виде

А = 510 В = 16.2

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

VAR

F2:TEXT; (* Выходной фаил *)

A:INTEGER; (* Целое данное *)

B:REAL; (* Дейст-е данное*)

BEGIN

A:=510; B:=16.2;

REWRITE (F2);

WRITE (F2,’A=’,A:3,’ ‘,’B’,B:4:1);

CLOSE (F2)

END.

Оператор REWRITE открывает файл для записи. Обращение к внешнему файлу в программе осуществляется с помощью имени F2.

Оператор CLOSE закрывает файл для записи.

13.4 Чтение и запись файла

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

Пример 13.3

VAR

T1:FILE OF CHAR; (* ВХОДНОЙ ФАЙЛ *)

T2:FILE OF CHAR; (* ВЫХОДНОЙ ФАЙЛ *)

S:CHAR; (* СИМВОЛЬНЫЕ ДАННЫЕ *)

R:INTEGER; (* ЦЕЛОЕ ДАННОЕ *)

BEGIN

RESET(T); (* ОТКРЫТИЕ ФАЙЛА Т1 *)

REWRITE(T2); (* ОТКРЫТИЕ ФАЙЛА Т2 *)

. . .

READ(T1?S); (* ЧТЕНИЕ ФАЛА ИЗ Т1 *)

. . .

WRITE(T2,R); (* ЗАПИСЬ ФАЙЛА В Т2 *)

. . .

CLOSE(T2); (* ЗАКРЫТИЕ ФАЙЛА Т2 *)

CLOSE(T1); (* ЗАКРЫТИЕ ФАЛА Т1 *)

END.

В представленной программе из входного файла с физическим именем т1 данные считываются в переменную S (Т1 – имя данного файла в программе). Значения некоторой переменной R записывается в выходной файл на диске с физическим именем Т2 (Т2 – имя выходного файла в программе.