Работа с файлами в Паскале (текстовые файлы)

  • pptx
  • 12.01.2020
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Работа с файлами в паскале (текстовые файлы).pptx

Работа с файлами в Паскале (текстовые файлы)

Чтение и запись данных в файл на Паскаль

Организация ввода данных из файла

1. Завести переменную типа текст и переменную в которую будем записывать прочитанное значение.

Var

t:text;

a:integer;

2. Связать эту текстовую переменную с файлом из которого будет производиться чтение.

Begin

assign(t,'c:\input.txt ');

Для связи файла в коде программы и действительного файла на внешнем носителе используется процедура ASSIGN

assign(t,'c:\input.txt');

где t — имя переменной (объявленной ранее в области var), ассоциированной с файлом
c:\input.txt— путь к реальному файлу
Первый аргумент процедуры assign в паскаль — переменная, второй – путь к файлу на диске.

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

reset(t);

4. Теперь можно читать данные.
Тут нужно понимать и помнить отличия процедуры read, от readln. Если в файле данные записаны в одной строке, через пробел, то мы пользуемся все время процедурой read столько раз, сколько чисел нужно прочитать.
Если же строк несколько, то когда доходим до символа стоящего в конце строки, используем readln. В результате чего будет считано последнее число строки и курсор переместится на новую.

read(t,a);

5. После окончания работы с файлами на Паскале, они должны быть закрыты.

Close(t);

Вывод результатов в текстовый файл


1. Как и в случае со вводом, необходимо связать текстовую переменную с выходным файлом. Только файл называется output.txt.

assign(t,'output.txt');

Затем необходимо создать или перезаписать файл output.txt

rewrite(t);

2.Выводим данные. (Не забываем ставить файловую переменную в начале списка вывода.)

write(t,'Вот число из файла input.txt ', a);

3. Закрываем файл.

close(t);

Пример:


Program pr;
var
a:integer;
t:text;
Begin
assign(t,'C:\input.txt');
reset(t);
read(t,a);
close(t);
a:=a+56;
assign (t,'C:\output.txt');
rewrite(t);
write(t,a);
close(t);
End.