Процедуры write, read

Для чтения информации из файла, связанного с файловой переменной f, можно воспользоваться стандартными операторами чтения следующей структуры:

read (f, x1, x2, …, xn);

read (f, x);

Процедура read не проверяет, достигнут ли конец файла. За этим нужно следить с помощью функции eof.

Для записи в файл можно применять стандартные операторы записи следующей структуры:

write (f, x1, x2, …, xn);

write (f, x);

Операторы последовательно записывают в файл значения переменных. Типы файла и переменных должны совпадать.

 

Для того чтобы создать файл, необходимо выполнить следующие действия

 

1. Описать файловую переменную.

2. Связать ее с физическим файлом (assign).

3. Открыть файл для записи (rewrite).

4. Внести необходимую информацию в файл (write).

5. Обязательно закрыть файл (close).

 

Для выполнения считывания информации из файла надо:

 

1. Описать файловую переменную.

2. Связать ее с физическим файлом.

3. Открыть файл для чтения.

4. Считать необходимую информацию (на этом этапе нужно проверять, достигнут ли конец файла).

5. Закрыть файл.

 

Пример 1. Записать n действительных чисел в файл.

program abc;

Var

f: file of real;

a: real;

i, n: integer;

Begin

{ Связываем файловую переменную с файлом на диске. }

assign (f, ‘ d: \tp\ abc.dat’);

{ открываем пустой файл для записи.}

rewrite (f);

{определяем количество элементов в файле.}

read (n);

{В цикле вводим очередной элемент и записываем его в файл.}

for i: =1 to n do

Begin

write (‘a=’);

read (a);

write (f,a)

End.

 

 

Пример 2. На диске D в каталоге TP находится файл вещественных чисел. Необходимо распечатать его содержимое и вычислить количество компонентов файла.

program bca;

Var

f1: file of real;

a: real;

n: integer;

Begin

{ связываем файловую переменную с файлом на диске.}

assign (f1, ‘D:\TP\abc1.dat’);

{открываем файл.}

reset (f1);

{В переменной n будет накапливаться количество элементов в файле.}

n:=0;

{Вход в цикл осуществляетс, если не достигнут конец файла}

while not eof (f1) do

Begin

{считываем очередной элемент из файла}

read (f1,a);

{Увеличиваем количество элементов в файле на один}

n:=n+1;

{Выводим очередной элемент на экран}

writeln (n, ‘-й элемент файла равен ‘, a:10:6)

end;

writeln;

writeln (‘в файле ‘,n,’ элементов’);

{Закрываем файл. Здесь это необязательно}

close (f1);

end.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: