System.SetTextBuf

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

procedure SetTextBuf(var F: Text; var Buf; [ Size: Integer]); overload;
procedure SetTextBuf(var F: Text; var Buf; [ Size: Integer]); overload;

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
procedure public System.pas System System

Beschreibung

Weist einer Textdatei einen E/A-Puffer zu.

In Delphi weist SetTextBuf der Textdatei F anstelle ihres internen den mit Buf angegeben Puffer zu. F ist eine Textdateivariable, Buf eine beliebige Variable und Size ein optionaler Ausdruck.

Jede Textdateivariable verfügt über einen internen 128 Byte großen Puffer, in dem die Read- und Write-Operationen zwischengespeichert werden. Die Größe dieses Puffers ist für die meisten Operationen ausreichend. Bei Programmen mit umfangreichen E/A-Operationen kann der Puffer vergrößert werden, um die Anzahl der Festplattenzugriffe zu verringern und das Dateisystem zu entlasten.

Mit Size wird die Größe des Puffers in Byte festgelegt. Ohne Angabe dieses Parameters wird automatisch SizeOf(Buf) verwendet. Der neue Puffer bleibt wirksam, bis F das nächst Mal an AssignFile übergeben wird.

SetTextBuf kann direkt nach Reset, Rewrite oder Append aufgerufen werden, darf aber nicht für eine geöffnete Datei verwendet werden.

Wird SetTextBuf mit einer geöffneten Datei aufgerufen, nachdem bereits E/A-Operationen durchgeführt worden sind, können aufgrund des Pufferwechsels Daten verloren gehen.

Die Delphi-Laufzeitbibliothek überprüft nicht, ob der Puffer während der gesamten Dauer der E/A-Operationen zur Verfügung steht. Ein häufig gemachter Fehler ist es, den Puffer mit einer lokalen Variable einzurichten und dann die Datei außerhalb der Routine zu verwenden, in der die Puffervariable deklariert wurde.

Siehe auch

Codebeispiele