Difference between revisions of "typed files/de"

From Free Pascal wiki
Jump to navigationJump to search
m
m (Fixed syntax highlighting; deleted category included in page template)
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{typed files}}
 
{{typed files}}
<br>
+
 
Zurück zu den [[File types/de|Dateitypen]].<br>
+
 
<br>
+
Zurück zu den [[File types/de|Dateitypen]].
 +
 
 +
 
 
__TOC__
 
__TOC__
<br>
+
 
 +
 
 
=typisierte Datei=
 
=typisierte Datei=
Die typisierte Textdatei eignet für die Verarbeitung von Dateien jeder Grösse.<br>
+
 
Eine typisierte Textdatei Datei besteht aus einzelnen Datensätzen. Alle Datensätze in der Datei haben die gleiche Struktur das heisst, dass jeder Datensatz gleich lang ist.
+
Eine typisierte Textdatei eignet sich für die Verarbeitung von Dateien jeder Grösse.
<br>
+
 
 +
Eine typisierte Textdatei besteht aus einzelnen Datensätzen. Alle Datensätze in der Datei haben die gleiche Struktur. Das heisst, dass jeder Datensatz gleich lang ist.
 +
 
 
=Festlegen der Struktur für Datei und Datensatz=
 
=Festlegen der Struktur für Datei und Datensatz=
 +
 
Die Struktur gilt für den Dateityp und den Datensatztyp.
 
Die Struktur gilt für den Dateityp und den Datensatztyp.
 
Datei und Datensatz müssen die gleiche Struktur haben.
 
Datei und Datensatz müssen die gleiche Struktur haben.
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang=pascal>
 
type
 
type
 
   TMitarbeiter = record
 
   TMitarbeiter = record
Line 19: Line 26:
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
=Ersellen der Datei=
+
=Erstellen der Datei=
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang=pascal>
 
var
 
var
 
   datDatei: File of TMitarbeiter;
 
   datDatei: File of TMitarbeiter;
Line 32: Line 40:
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
 
=Schliesssen der Datei=
 
=Schliesssen der Datei=
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang=pascal>
 
begin
 
begin
 
   ...
 
   ...
Line 41: Line 50:
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
 
=Datensatz schreiben=
 
=Datensatz schreiben=
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang=pascal>
 
var
 
var
 
   datDatei: File of TMitarbeiter;
 
   datDatei: File of TMitarbeiter;
Line 56: Line 66:
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
 
  
 
=Datensatz lesen=
 
=Datensatz lesen=
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang=pascal>
 
var
 
var
 
   datDatei: File of TMitarbeiter;
 
   datDatei: File of TMitarbeiter;
Line 70: Line 80:
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
 
=Datei komplett lesen=
 
=Datei komplett lesen=
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang=pascal>
 
var
 
var
 
   datDatei: File of TMitarbeiter;
 
   datDatei: File of TMitarbeiter;
Line 86: Line 97:
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
 
=Zeiger auf Datensatz positionieren=
 
=Zeiger auf Datensatz positionieren=
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang=pascal>
 
begin
 
begin
 
   AssignFile(datDatei, 'D:\beispiel.txt');
 
   AssignFile(datDatei, 'D:\beispiel.txt');
Line 100: Line 112:
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
 
<br>
 
--[[User:Olaf|Olaf]] 16:09, 24 October 2012 (UTC)
 
[[Category:Code/de]]
 

Latest revision as of 03:30, 2 March 2020

Deutsch (de) English (en) polski (pl)


Zurück zu den Dateitypen.



typisierte Datei

Eine typisierte Textdatei eignet sich für die Verarbeitung von Dateien jeder Grösse.

Eine typisierte Textdatei besteht aus einzelnen Datensätzen. Alle Datensätze in der Datei haben die gleiche Struktur. Das heisst, dass jeder Datensatz gleich lang ist.

Festlegen der Struktur für Datei und Datensatz

Die Struktur gilt für den Dateityp und den Datensatztyp. Datei und Datensatz müssen die gleiche Struktur haben.

type
  TMitarbeiter = record
  strName : string[20];
  sinGehalt : single;
end;

Erstellen der Datei

var
  datDatei: File of TMitarbeiter;
  recDatensatz: TMitarbeiter;
begin
  AssignFile(datDatei, 'D:\beispiel.txt');
  ReWrite(datDatei);  // Erstellt die neue Datei
  // Eine bereits vorhandene Datei wird dabei gelöscht und neu erstellt
  ...
end;

Schliesssen der Datei

begin
  ...
  Close(datDatei);  // Schliesst die Datei
  ...
end;

Datensatz schreiben

var
  datDatei: File of TMitarbeiter;
  recDatensatz: TMitarbeiter;
begin
  ...
  // Datensatz füllen
  recDatensatz.strName := 'abcdefghij';
  recDatensatz.sinGehalt := 1700.21;
  Write(datDatei, recDatensatz); // Schreibt den Datensatz in die Datei
  ...
end;

Datensatz lesen

var
  datDatei: File of TMitarbeiter;
  recDatensatz: TMitarbeiter;
begin
  AssignFile(datDatei, 'D:\beispiel.txt');
  Reset(datDatei);  // Setzt den Dateizeiger auf den Anfang der Datei
  Read(datDatei, recDatensatz); // Liest den Datensatz aus der Datei
  ...
end;

Datei komplett lesen

var
  datDatei: File of TMitarbeiter;
  recDatensatz: TMitarbeiter;
begin
  AssignFile(datDatei, 'D:\beispiel.txt');
  Reset(datDatei);
  while not eof(datDatei)   //solange noch Daten zu lesen sind
    do begin
      read(datDatei,recDatensatz);
    end;
  CloseFile(datDatei);
end;

Zeiger auf Datensatz positionieren

begin
  AssignFile(datDatei, 'D:\beispiel.txt');
  Reset(datDatei);
  ...
  Seek(datDatei,0);
  Read(datDatei, recDatensatz);
  recDatensatz.sinGehalt :=1602.22;
  Write(datDatei, recDatensatz);
  ...
end;