Sign in Join
Wiki copytemporary

Revision 1 of 2, by WikiArchive on 11-4-2026. The page as it is now.

binary file/de

Zurück zu den Dateitypen.

Contents

Binärdatei

Eine Binärdatei eignet sich für die Verarbeitung von Dateien jeder Grösse.

Bei Binärdateien, wird der Inhalt einer Datei Zeichen für Zeichen eingelesen. Umgekehrt wird die Datei Zeichen für Zeichen geschrieben.

Wird eine Datei als Binärdatei geöffnet, dann kann an einer beliebigen Stelle in der Datei ein Zeichen geändert werden.

In eine mit FILE OF definierte Datei können nun Daten desselben Typs geschrieben und gelesen werden.

Mit FILE OF können Binärdateien u. a. wie folgt definiert werden:

pascal
var
      datByte: File of Byte;   // liest und schreibt immer ein Zeichen
      datChar: File of Char;   // liest und schreibt immer ein Zeichen
      datInt: File of Integer; // liest und schreibt immer zwei Zeichen
      ...

Mit dem Befehl SEEK kann auf jede Stelle in der Binärdatei zugegriffen werden.

Datei erstellen

pascal
var
      datDatei: file of char;
      chrZeichen: char;
    
    begin
      Assignfile(datDatei, 'D:\beispiel.txt'); // Weist der Variablen txtDatei den Namen der Datei zu und öffnet die Datei
      ReWrite(datDatei); // Eine alte Datei wird soweit vorhanden überschrieben
      chrZeichen := 'A';
      Write(datDatei, chrZeichen); // Schreibt das erste Zeichen in die neue Datei 
      ...
    end;

Datei schliessen

pascal
var
      datDatei: file of char;
      chrZeichen: char;
    
    begin
      ...
      CloseFile(datDatei); //Schliesst die Datei
    end;

Ein Zeichen an das Ende einer bestehende Datei anfügen

Bei Binärdateien kann mit Hilfe des Befehls Seek am Ende einer Datei ein Zeichen hinzugefügt werden.

pascal
var
      datDatei: file of char;
      chrZeichen: char;
    
    begin
      AssignFile(datDatei, 'd:\beispiel.txt');
      Reset(datDatei); // Setzt den Dateizeiger auf den Dateianfang
      seek(datDatei, FileSize(datDatei)); // Ermittelt das Dateiende und setzt den Dateizeiger auf das Dateiende
      chrZeichen := 'b';
      Write(datDatei, chrZeichen); // Schreibt ein weiteres Zeichen an das Dateiende
      ...

Ein Zeichen in einer bestehende Datei ersetzen

Bei Binärdateien kann mit Hilfe des Befehls Seek an einer beliebigen Stelle der Datei ein Zeichen ersetzt werden.

pascal
var
      datDatei: file of char;
      chrZeichen: char;
    
    begin
      AssignFile(datDatei, 'd:\beispiel.txt');
      Reset(datDatei); // Setzt den Dateizeiger auf den Dateianfang
      seek(datDatei, 1); // Ermittelt das zweite Zeichen in einer Datei
      chrZeichen := 'f';
      Write(datDatei, chrZeichen); // Überschreibt das zweite Zeichen in der Datei
      ...

Datei komplett lesen

pascal
var
      datDatei: file of char;
      chrZeichen: char;
    
    begin
      AssignFile(datDatei, 'D:\beispiel.txt');
      Reset(datDatei);
      read(datDatei, chrZeichen);
      ...
      while not eof(datDatei)   // mach weiter, solange noch Daten zu lesen sind
        do begin
          ...
          read(datDatei, chrZeichen); // liest ein einzelnes Zeichen
        end;
      CloseFile(datDatei);
    end;

From the Free Pascal wiki, page "binary file/de", as the Internet Archive kept it on 2025-05-04. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.