OpenFile()

Syntax

Ergebnis = OpenFile(#Datei, DateiName$)
Beschreibung
Öffnet die angegebene Datei oder erstellt sie, falls sie nocht nicht existiert. Lese- und Schreiboperationen können nun mit dieser Datei ausgeführt werden. OpenFile() wird auf die gleiche Art und Weise wie die Befehle ReadFile() zum "nur Lesen" bzw. CreateFile() zum "nur Schreiben" verwendet. Wenn eine existierende Datei mittels OpenFile() geöffnet wird, dann wird der Dateizeiger an den Anfang der Datei gesetzt.

Wenn #PB_Any als '#Datei' Parameter verwendet wird, dann wird die neue Datei-Nummer als 'Ergebnis' zurückgegeben.

Ist 'Ergebnis' ungleich 0, wurde die Datei erfolgreich geöffnet, andernfalls konnte die Datei nicht geöffnet werden. Das Ergebnis muss immer getestet werden, da das Ausführen von Operationen auf nicht erstellte Dateien zu schlimmen Abstürzen führt.

Wenn die '#Datei' bereits benutzt wurde, wird die vorherige Datei automatisch geschlossen.

Wenn Daten zu einer existierenden Datei hinzugefügt werden sollen, muss der Dateizeiger zuerst auf das Ende der Datei gesetzt werden. Hierfür werden nach OpenFile() die Befehle FileSeek() und Lof() verwendet:

Beispiel:

  If OpenFile(0, "Test.txt")    ; öffnet eine existierende Datei oder erstellt eine, wenn sie noch nicht existiert
    FileSeek(0, Lof(0))         ; springt an das Ende der Datei (das Ergebnis von Lof() wird hierfür verwendet)
    WriteStringN(0, "... another line at the end.")
    CloseFile(0)
  EndIf

Hinweis: bei der Verwendung von OpenFile() muss die Datei Lese- UND auch Schreibrechte haben. Zum Beispiel kann dies ein Problem sein, wenn versucht wird, eine Datei auf einer CDRom zu verändern. Um aus einer Datei zu lesen, ist stattdessen die ReadFile() Funktion die bevorzugte Methode.

Unterstützte OS

Alle

<- Lof() - File Inhaltsverzeichnis - ReadAsciiCharacter() ->