|
III. ФУНКЦИИ И ПРОЦЕДУРЫ ДЛЯ РАБОТЫ С ФАЙЛАМИ
1. Основные функции и процедуры для работы с файлами
Процедура BlockWrite(
var Vf : file;
var Buf; Count: Integer
[; var AmtTransferred: Integer] );
Модуль: System
Описание
Процедура записывает одну или несколько записей из переменной Buf во внешний файл, связанный с файловой переменной Vf.
Параметр Count определяет количество записей, которое необходимо записать в файл.
В параметре AmtTransferred возвращается фактическое количество скопированных записей, которое может быть меньше Count (например, когда место на диске закончилось до окончания записи в файл).
Максимальный размер записываемого блока равен Count*RecSize байт, где RecSize - размер записи, определенный, во время открытия файла или 128 байт, если размер записи не был определен.
Параметр AmtTransferred является необязательным. Но если данный параметр опущен, и количество прочитанных записей будет меньше Count, то возникнет ошибка ввода/вывода (исключение EinOutError).
Пример var
Vf1, Vf2 : file;
NRead, NWrite: Integer;
Buf: array[1..1024] of Char;
begin
AssignFile(Vf1, 'readtxt.html');
Reset(Vf1, 1); {Устан-ет размер записи входного файла =1}
AssignFile(Vf2, 'writetxt.html');
Rewrite(Vf2, 1); {Устан-ет размер записи выходного файла =1}
repeat
BlockRead(Vf1, Buf, SizeOf(Buf), NRead); {читает данные}
BlockWrite(Vf2, Buf, NRead, NWrite); {записывает данные}
until (NRead = 0) or (NWrite NRead);
CloseFile(Vf1);
CloseFile(Vf2);
end;
[Вернуться к содержанию]
|