untyped files/de
│
Deutsch (de) │
English (en) │
polski (pl) │
Zurück zu den Dateitypen.
untypisierte Textdatei
Eine untypisierte Textdatei eignet sich für die Verarbeitung von Dateien jeder Grösse.
Bei untypisierten Dateien, wird der Inhalt einer Datei Zeile für Zeile eingelesen. Umgekehrt wird die Datei Zeile für Zeile geschrieben.
Die Datensätze einer untypisierten Datei können von unterschiedlicher Länge sein.
Datei erstellen
var
datDatei: TextFile; // oder: datDatei: Text
strName: String;
sinGehalt: Single;
begin
Assign(datDatei,'d:\beispiel.txt'); // Weist der Variablen txtDatei den Namen der Datei zu und öffnet die Datei
ReWrite(datDatei); // Die alte Datei wird überschrieben
strName := 'qwert';
sinGehalt := 1800.23;
WriteLn(datDatei, strName, sinGehalt); // Schreibt den ersten Datensatz in die neue Datei
...
end;
Im Compiler-Modus OBJPFC oder DELPHI steht zusätzlich zu Assign auch die Prozedur AssignFile zur Verfügung, um eine Verwechslung mit TPersistent.Assign auszuschließen.
Datei öffnen
var
datDatei: TextFile;
strName: String;
sinGehalt: Single;
begin
Assign(datDatei,'d:\beispiel.txt'); // Weist der Variablen txtDatei den Namen der Datei zu
Reset(datDatei); // Setzt den Dateizeiger auf den Anfang der Datei
ReadLn(datDatei, strName, sinGehalt); // Liest die erste Zeile aus der Datei ein
ReadLn(datDatei, strName, sinGehalt); // Liest die zweite Zeile aus der Datei ein
...
end;
Datei schliessen
var
datDatei: TextFile;
strName: String;
sinGehalt: Single;
begin
...
Close(datDatei); //Schliesst die Datei
end;
Analog zu AssignFile/Assign steht im Compiler-Modus OBJPFC oder DELPHI steht auch die Prozedur CloseFile zur Verfügung.
Datensatz an eine vorhandenen Datei anfügen
Bei Textdateien (untypisierten Dateien) kann mit Hilfe des Befehls Append am Ende der Datei ein Datensatz angefügt werden.
var
datDatei: TextFile;
strName: String;
sinGehalt: Single;
begin
Assign(datDatei,'d:\beispiel.txt'); // Weist der Variablen txtDatei den Namen der Datei zu
Append(datDatei); // Öffnet die Datei für den Schreibzugriff und erlaubt das Anfügen von Datensätzen an das Ende der Datei
strName := 'sdf';
sinGehalt := 2001.21;
WriteLn(datDatei, strName,sinGehalt); // Schreibt einen weiteren Datensatz in die neue Datei
Close(datDatei); //Schliesst die Datei
Datei komplett lesen
var
datDatei: TextFile;
strName: String;
sinGehalt: Single;
begin
Assign(datDatei, 'D:\beispiel.txt');
Reset(datDatei);
while not eof(datDatei) //solange noch Daten zu lesen sind
do begin
read(datDatei, strName, sinGehalt);
end;
Close(datDatei);
end;