PostHeaderIconDelphi. Процедура SetTextBuf( var Vf: Text; var [ ; Size: Integer] );

Процедура SetTextBuf( var Vf: Text; var [ ; Size: Integer] );

Модуль: System

Описание
Процедура устанавливает буфер ввода/вывода для текстового файла.
Каждая файловая переменная текстового файла имеет внутренний 128-байтовый буфер чтения/записи. Данный буфер не играет роли в большинстве приложений, однако, если программа жестко привязана к вводу/выводу, то наличие буфера позволяет увеличить ее эффективность за счет уменьшения обращений к диску и непроизводительных затрат системы. Процедура SetTextBuf устанавливает для текстового файла, связанного с файловой переменной Vf, взамен внутреннего 128-байтового буфера, буфер указанный в параметре Buf, размером Size байт. Если переменная Size опущена, то размер принимается равным SizeOf( Buf ). Новый заданный буфер будет ассоциирован с файлом Vf до вызова функции AssignFile для данного файла. Процедура SetTextBuf вызывается сразу после вызова процедур Reset, Rewrite или Append. Если до вызова SetTextBuf над файлом производились операции ввода/вывода, то из-за смены буфера информация может быть потеряна.



Пример
var
  Vf1, Vf2: TextFile;
  Buf: array[1..1024] of Char;
  C: Char;
begin
  AssignFile( Vf1, 'read.txt');
  Reset( Vf1);
  SetTextBuf( Vf1, Buf); { устанавливает 1Кб буфер для чтения файла }
  AssignFile( Vf2, 'write.txt');
  Rewrite( Vf2);
  while not Eof( Vf1) do
     begin
     Read( Vf1, C);
     Write( Vf2, C);
     end;
  CloseFile( Vf1 );
  CloseFile( Vf2 );
end;

 
Copyright © 2007-2010 IsIProg.ru. All Rights Reserved.