Лекция: Процедуры и функции для работы с текстовыми файлами
| Процедура или функция | Описание |
| Процедура Assign(F,<Имя>) | Назначает имя файла файловой переменной F |
| Процедура Reset(F) | Открывает файл для чтения. Если файла с назначенным именем нет, возникает ошибка ввода-вывода |
| Процедура Rewrite(F) | Создает файл и открывает его для записи. Если файл уже есть, он перезаписывается |
| Процедура Close(F) | Закрывает файл, открытый ранее процедурами Reset или Rewrite |
| Процедура Read[Ln](F,<Список переменных>) | Читает из файла значения указанных переменных. ReadLn после чтения значений пропускает все оставшиеся данные до конца текущей строки и переходит на следующую |
| Процедура Write[Ln](F,<Список значений>) | Работает, как и обычный оператор вывода, но данные записываются в текстовый файл, задаваемый переменной F |
| Функция Eof(F) | Возвращает истину, если достигнут конец файла при чтении |
Для примера рассмотрим следующую задачу: на входе дан текстовый файл, в котором в каждой строке записано по 3 вещественных числа. Необходимо считать информацию из файла и создать новый файл, в каждую строку которого записать сумму чисел в соответствующей строке входного файла, как показано на следующем рисунке.
| Входной файл (Test.txt) | → | Двумерный массив (A) | → | Выходной файл (Out.txt) |
| 1.2 5 7.3 3.3 9 4 8 6 1.1... | 13.5 16.3 15.1... | |||
| 1.2 | 7.3 | |||
| 3.3 | ||||
| 1.1 | ||||
| … | … |
Текст программы
VAR
F:Text;
n,i:Integer;
A:ARRAY [1..100,1..3] OF Real;
BEGIN
Assign(F,'Test.txt');
Reset(F);
n:=0;
WHILE NOT Eof(F) DO
BEGIN
Inc(n);
Readln(F,A[n][1],A[n][2],A[n][3]);
END;
Close(F);
Assign(F,'Out.txt');
Rewrite(F);
FOR i:=1 to n DO
Writeln(F,A[n][1]+A[n][2]+A[n][3]);
Close(F);
END.
еще рефераты
Еще работы по информатике