Язык:
Русский
English
SetTextBuf (процедура)
Назначает буфер ввода/вывода на текстовый файл.
Объявление
Procedure SetTextBuf(Var F : Text; Var Buf [ ; Size : Word ] );
Режим
Windows, Real, Protected
Замечания
Процедуру SetTextBuf нельзя применять к открытому файлу, хотя ее и можно вызывать сразу после выполнения Reset, ReWrite и Append.
Если вы вызываете SetTextBuf для открытого файла во время операций ввода/вывода, то это может вызвать потерю данных из-за смены буфера.
Borland Pascal не гарантирует, что буфер будет существовать во время всей операций ввода/вывода в файл. Обычная ошибка состоит в том, что используют локальную переменную как буфер, а затем используют файл вне процедуры, в которой был объявлен буфер.
Пример
Язык:
Русский
English
{ Пример программы для процедуры SetTextBuf }
F : Text;
Ch : Char;
Buf : array[0 .. 4095] of Char; { 4Kб буфер }
begin
{ Получаем имя файла для чтения из командной строки }
Assign(F, ParamStr(1));
{ Большой буфер для ускорения чтения }
SetTextBuf(F, Buf);
Reset(F);
{ Выводим содержимое файла на экран }
while not EOF(F) do
begin
Read(F, Ch);
Write(Ch);
end;
end.