1.2.92 FileOpen – Öffne eine Datei
FileOpen( strFileName, strMode, nHandle )
Argumente
strFileName
Name der Datei, die geöffnet werden soll
 
strMode
Modus der zu öffnenden Datei
"r"
Öffnen zum Lesen. Existiert die Datei nicht, wird das Skript mit einer Fehlermeldung abgebrochen.
"w"
Öffnet eine Datei zum Schreiben. Ist sie nicht vorhanden wird sie neu angelegt. Der Inhalt einer bestehenden Datei wird gelöscht.
"a"
Die Datei wird im Appendmodus geöffnet. Ist sie nicht vorhanden wird sie angelegt. Bei einer bestehenden Datei werden die Daten am Ende hinzugefügt.
"r+"
Öffnet eine Datei zum Lesen und Schreiben. Die Datei muss existieren.
"w+"
Öffnet eine Datei zum Schreiben und Lesen. Ist sie nicht vorhanden wird sie angelegt. Der Inhalt einer bestehenden Datei wird gelöscht.
"a+"
Die Datei wird im Appendmodus geöffnet. Ist sie nicht vorhanden wird sie angelegt. Bei einer bestehenden Datei werden die Daten am Ende hinzugefügt
Hinweis: Beim Schreiben von Daten wird das Zeichen LineFeed (LF, 0Ah) automatisch um das Zeichen CarriageReturn (CR, 0Dh) ergänzt.
Soll dies verhindert werden, so muss beim Modus ein „b“ für Binärmodus ergänzt werden, z.B.“wb“ statt „w“
 
nHandle
Datei-Handle der geöffneten Datei als Rückgabeparameter. Muss bei FileClose wieder benutzt werden.
Funktionsart
Standardfunktion
Beispiele
// Beispiel 1: Satz schreiben bzw. anhaengen:
// Es wird in DATEI0.TXT ein Satz geschrieben und der alte
// Inhalt der Datei wird gelöscht, falls schon vorhanden.
// In DATEI1.TXT wird ein Satz am Ende angehaengt.
// In beiden Faellen wird am Ende kein CarriageReturn oder Linefeed angehaengt.
Long( nHandle_0, nHandle_1 );
FileOpen( „c:\temp\datei0.txt“, „w“, nHandle_0 );
FileOpen( „c:\temp\datei1.txt“, „a“, nHandle_1 );
FileWrite( nHandle_0, „Write to file one“ );
FileWrite( nHandle_1, „Write to file two“ );
FileClose( nHandle_0 );
FileClose( nHandle_1 );
// Beispiel 2: Satz schreiben mit CR/LF:
FileOpen("C:\TEST\TESTCRLF.ASC","w",lHandle);
AssignString(strHlp, "Irgendein Text und CR/LF anhaengen");
AppendLF( strHlp );      // CR und LF anhaengen wegen Modus “w”
FileWrite(lHandle, strHlp);
// Beispiel 3: Satz schreiben mit LF (ohne CR):
FileOpen("C:\TEST\TESTCRLF.ASC","wb",lHandle);
AssignString(strHlp, "Irgendein Text und LF anhaengen");
AppendLF( strHlp );       // LF anhaengen ohne CR wegen Modus “wb”
FileWrite(lHandle, strHlp);
FileClose( lHandle );
// Beispiel 4: Satz schreiben mit CR/LF ueber Ersetzung:
FileOpen("C:\TEST\TESTCRLF.ASC","w",lHandle);
AssignString(strHlp, "Irgendein Text und CR/LF anhaengen");
AppendString(strHlp,"<++change++>");
StringReplacePattern(strHlp,"<++change++>",10); // String durch LF (=10)
// Es wird auch CarriageReturn ergaenzt, weil Datei mit Modus “w” geoeffnet
FileWrite(lHandle, strHlp);
FileClose( lHandle );
// Beispiel 5: Satz schreiben mit CR ueber Ersetzung:
FileOpen("C:\TEST\TESTCRLF.ASC","w",lHandle);
AssignString(strHlp, "Irgendein Text und mit REPLACE CR anhaengen");
AppendString(strHlp,"<++change++>");
StringReplacePattern(strHlp,"<++change++>",13);
FileWrite(lHandle, strHlp);
FileClose( lHandle );
// Beispiel 6: Satz schreiben mit CR ueber Formatierung:
FileOpen("C:\TEST\TESTCRLF.ASC","wb",lHandle);
AssignString(strHlp, "Irgendein Text und mit Formatierung CR/LF ");
StringFormatFromString(strHlp1,"anhaengen","C9>>[CR][LF]>>");
AppendString(strHlp,strHlp1);
FileWrite(lHandle, strHlp);
Siehe auch
FileRead, FileWrite und FileClose