writе(<ф.п.>, <список ввода>); - процедура записи в файл, список ввода – последовательность 1 и более переменных или значений типа char, string или любого другого целого или вещественного типа. Процедура writeln после записи информации в файл переводит указатель на следующую строку, т.е. добавляет код #13#10;
пример записи в текстовый файл:
var
f:text;
a:byte;
c:char;
.
.
a:=100;
c:=’z’;
assign(f,’t.txt’);
rewrite(f);
write(f,a,c);
writeln(f,’a’,’b’);
close(f);
Чтение данных из файла(read,readln).
read(<ф.п.>, <список вывода>); - процедура чтения, список вывода – список из 1 и более переменных вышеуказанного типа.
Пример чтения из файла.
Reset(f);
Read(f,c);
Readln(f,c);
Read(f,c);
Close(f);
Reset(f);
Read(f,a);
Close(f);
Декция №12
Файлы ввода/вывода. Текстовые файлы. процедуры работы с текстовыми файлами. Запись и чтение в текстовый файл информации различного типа (числовая, строковая).
Процедуры работы с текстовым файлами.
SettextBuf(<ф.п.>, <буферная переменная> [,<размер буфера>]); размер буфера по умолчанию: 128 байт.
вызов этой процедуры происходит после связи файловой переменной с файлами, и до открытия. Если размер буфера не указан то он устанавливается равным буферной переменной.
|
|
Пример использования буфера.
f:text;
b: array [1..100] of byte;
begin
Assign(f, ‘t.txt’);
SettextBuf(f,b);
rewrite(f);
write(f, ‘z’);
***
close(f);
в данном случае буфер находится в статической памяти, буфер можно разместить и в динамической памяти.
Пример:
f:text;
b: pointer;
begin
Assign(f, ‘t.txt’);
Getmem(b,100);
SettextBuf(f,b);
***
Fremem(b,100)
Flush(<ф.п.>); - используется для открытых для записи файлов и принудительной записи данных из буфера ввода /вывода в файл, независимо от степени его заполнения, обычно используется в «узких» местах программы.
Eoln(<ф.п.>); - возвр. true,если указатель в файле достиг конца строки, работает для открытого на чтение файла.
Пример чтения из текстового файла и вывод читаемой информации на экран.
Reset(f);
While not eoln(f) do
Begin
Read(f,ch);
Write(ch);
End;
Seekeoln(<ф.п.>); - возвр. true,если до конца строки или файла остались одни разделители(пробелы и символы табуляции). Эта функция через эти символы «видит» конец строки или файла.
Eoln - читает весь файл, Seekeoln - пропускает пробелы.
Seekeof (<ф.п.>); - возвр. true,если до конца файла остались одни разделители(пробелы и символы табуляции)