====== fopen() ====== Lib: **stdio.h** Die Funktion **fopen** dient dazu, einen Datenstrom (Stream) zu öffnen. Datenströme sind Verallgemeinerungen von Dateien. Die Syntax dieser Funktion lautet: **Syntax:** FILE *fopen (const char *Pfad, const char *Modus); **Parameter:** Der **Pfad** ist der Dateiname, der **Modus** darf wie folgt gesetzt werden: * **r** - Datei nur zum Lesen öffnen (READ) * **w** - Datei nur zum Schreiben öffnen (WRITE), löscht den Inhalt der Datei, wenn sie bereits existiert * **a** - Daten an das Ende der Datei anhängen (APPEND), die Datei wird nötigenfalls angelegt * **r+** - Datei zum Lesen und Schreiben öffnen, die Datei muss bereits existieren * **w+** - Datei zum Lesen und Schreiben öffnen, die Datei wird nötigenfalls angelegt * **a+** - Datei zum Lesen und Schreiben öffnen, um Daten an das Ende der Datei anzuhängen, die Datei wird nötigenfalls angelegt Es gibt noch einen weiteren Modus: * **b** - Binärmodus (anzuhängen an die obigen Modi, z.B. "rb" oder "w+b") Ohne die Angabe von **b** werden die Daten im sogenanntem Textmodus gelesen und geschrieben, was dazu führt, daß unter bestimmten Systemen bestimmte Zeichen bzw. Zeichenfolgen interpretiert werden. Unter Windows z.B. wird die Zeichenfolge "\r\n" als Zeilenumbruch übersetzt. Um dieses zu verhindern, muß die Datei im Binärmodus geöffnet werden. Unter Systemen, die kein Unterschied zwischen Text- und Binärmodus machen (wie zum Beispiel bei Unix, GNU/Linux), hat das b keine Auswirkungen (Es wird bei Unix, GNU/Linux immer im Binärmodus geöffnet). **Rückgabewert:** Die Funktion fopen gibt NULL zurück, wenn der Datenstrom nicht geöffnet werden konnte, ansonsten einen Zeiger vom Typ FILE auf den Datenstrom. Quelle: [[http://de.wikibooks.org/wiki/C-Programmierung:_Dateien]] ---- Stand: 03.03.2010 EOF