Zurück zu: C Tutorial
Dateiverwaltung
In C können Sie Dateien erstellen, öffnen, lesen und in sie schreiben, indem Sie einen Zeiger vom Typ FILE
deklarieren und die Funktion fopen()
verwenden:
FILE *fptr;
fptr = fopen(filename, mode)
FILE
ist grundsätzlich ein Datentyp, und wir müssen eine Zeigervariable erstellen, um damit arbeiten zu können (fptr
). Diese Zeile ist im Moment nicht wichtig. Sie ist nur etwas, das Sie beim Arbeiten mit Dateien benötigen.
Um eine Datei tatsächlich zu öffnen, verwenden Sie die Funktion fopen()
, die zwei Parameter benötigt:
Parameter | Beschreibung |
---|---|
filename | Der Name der eigentlichen Datei, die Sie öffnen (oder erstellen) möchten, etwa Dateiname.txt |
mode | Ein einzelnes Zeichen, das darstellt, was Sie mit der Datei tun möchten (lesen, schreiben oder anhängen):w – Schreibt in eine Datei a – Fügt einer Datei neue Daten hinzu r – Liest aus einer Datei |
Erstellen einer Datei
Um eine Datei zu erstellen, können Sie den w
Modus innerhalb der Funktion fopen()
verwenden.
Der Modus w
wird zum Schreiben in eine Datei verwendet. Wenn die Datei jedoch nicht existiert, wird eine für Sie erstellt:
Beispiel
FILE *fptr;
// Create a file
fptr = fopen("filename.txt", "w");
// Close the file
fclose(fptr);
Hinweis: Die Datei wird im selben Verzeichnis wie Ihre anderen C-Dateien erstellt, wenn nichts anderes angegeben ist.
Auf unserem Computer sieht es folgendermaßen aus:

Tipp: Wenn Sie die Datei in einem bestimmten Ordner erstellen möchten, geben Sie einfach einen absoluten Pfad an:
fptr = fopen("C:\Verzeichnisname\Dateiname.txt", "w");
Schließen der Datei
Haben Sie in unserem obigen Beispiel die Funktion
fclose()
bemerkt?Dadurch wird die Datei geschlossen, wenn wir damit fertig sind.
Dies gilt als bewährtes Verfahren, da dadurch Folgendes sichergestellt wird:
- Änderungen werden ordnungsgemäß gespeichert
- Andere Programme können die Datei verwenden (falls gewünscht)
- Unnötigen Speicherplatz freigeben
In den nächsten Kapiteln erfahren Sie, wie Sie Inhalte in eine Datei schreiben und aus dieser lesen.