C-Bibliotheksfunktionen -fopen()
C-Standardbibliothek - <stdio.h>
Beschreibung
C-BibliotheksfunktionenFILE *fopen(const char *filename, const char *mode)unter Verwendung des angegebenen ModusmodeÖffnenfilenamedie Datei, auf die gezeigt wird.
Deklaration
Nachfolgend finden Sie die Deklaration der Funktion fopen().
FILE *fopen(const char *filename, const char *mode)
Parameter
- filename-- Eine Zeichenkette, die den Namen der zu öffnenden Datei darstellt.
- mode-- Eine Zeichenkette, die den Dateizugriffsmodus darstellt und einen der Werte in der folgenden Tabelle annehmen kann:
| Mode | Beschreibung |
|---|---|
| "r" | Öffnet eine Datei zum Lesen. Die Datei muss vorhanden sein. |
| "w" | Erstellt eine leere Datei zum Schreiben. Wenn der Dateiname mit einer vorhandenen Datei übereinstimmt, wird der Inhalt der vorhandenen Datei gelöscht, und die Datei wird als neue leere Datei behandelt. |
| "a" | Hängt an eine Datei an. Schreiboperationen hängen Daten an das Ende der Datei an. Wenn die Datei nicht existiert, wird sie erstellt. |
| "r+" | Öffnet eine Datei zum Aktualisieren, lesbar und beschreibbar. Die Datei muss existieren. |
| "w+" | Erstellt eine leere Datei zum Lesen und Schreiben. |
| "a+" | Öffnet eine Datei zum Lesen und Anhängen. |
Rückgabewert
Die Funktion gibt einen FILE-Zeiger zurück. Andernfalls gibt sie NULL zurück und setzt die globale Variable errno, um den Fehler anzugeben.
Beispiel
Das folgende Beispiel zeigt die Verwendung der Funktion fopen().
Beispiel
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE * fp;
fp = fopen ("file.txt", "w+");
fprintf(fp, "%s %s %s %d", "Wir", "sind", "in", 2014);
fclose(fp);
return(0);
}
Lassen Sie uns das obige Programm kompilieren und ausführen, wodurch eine Datei mit folgendem Inhalt erstellt wird.file.txt:
We are in 2014
Nun verwenden wir das folgende Programm, um den Inhalt der obigen Datei anzuzeigen:
#include <stdio.h>
int main ()
{
FILE *fp;
int c;
fp = fopen("file.txt","r");
while(1)
{
c = fgetc(fp);
if( feof(fp) )
{
break ;
}
printf("%c", c);
}
fclose(fp);
return(0);
}
Weitere Erweiterungen