home *** CD-ROM | disk | FTP | other *** search
- PROGRAM FileOfXY;
-
- TYPE
- Person = RECORD
- Name, Vorname : STRING;
- ....
- END;
-
- CONST
- Karten : INTEGER = 0; { speichert die Anzahl der Einträge }
-
- VAR
- Kartei : ARRAY [1..50] OF Person; { enthält die Records }
-
- ....
- ....
- ....
-
- PROCEDURE Speichern;
- VAR
- Dateiname : STRING;
- f : FILE OF Person; { Datei mit wahlfreiem Zugriff }
- n : INTEGER;
- BEGIN
- WriteLn('Bitte Dateinamen eingeben: ');
- ReadLn(Dateiname);
- Assign(f, Dateiname); { Dateivariaben einen Namen zuweisen }
- Rewrite(f); { neue Datei anlegen }
- FOR n := 1 TO Karten DO { und alle Einträge speichern }
- Write(f, Kartei[n]);
- END;
-
- ....
- ....
- ....
-
- PROCEDURE Laden;
- VAR
- Dateiname : STRING;
- f : FILE OF Person;
- BEGIN
- WriteLn('Bitte Dateinamen eingeben: ');
- ReadLn(Dateiname);
- Assign(f, Dateiname); { Dateivariablen einen Namen zuweisen }
- Reset(f); { neue Datei anlegen }
- Karten := 0; { bislang kein Record gelesen bzw. vorhanden }
- WHILE NOT EoF(f) DO { solange Dateiende nicht erreicht ist }
- BEGIN
- Inc(Karten); { Zähler incrementieren }
- Read(f, Kartei[Karten]); { und Record aus Datei lesen }
- END;
- END;
-