logo

C fopen()-Funktion mit Beispielen

Der fopen()-Methode In C handelt es sich um eine Bibliotheksfunktion, die zum Öffnen einer Datei verwendet wird, um verschiedene Vorgänge auszuführen, darunter Lesen, Schreiben usw. sowie verschiedene Modi. Wenn die Datei vorhanden ist, öffnet die Funktion fopen() die jeweilige Datei, andernfalls wird eine neue Datei erstellt.

Syntax

Die Syntax von C fopen() lautet:

FILE * fopen (const char * file_name , const char * mode_of_operation );>

Parameter

Die Methode akzeptiert zwei Parameter vom Typ Zeichenzeiger:



  • Dateiname: Dies ist vom Typ C-String und akzeptiert den Namen der Datei, die geöffnet werden muss.
  • Arbeitsweise: Dies ist ebenfalls vom Typ C-String und bezieht sich auf den Modus des Dateizugriffs.

Die folgende Tabelle listet gültige mode_of_operation-Werte in C mit ihrer Bedeutung auf:

Öffnungsmodi

Beschreibung

R

Durchsucht die Datei. Öffnet die Datei nur zum Lesen . Wenn die Datei erfolgreich geöffnet wurde, lädt fopen() sie in den Speicher und richtet einen Zeiger ein, der auf das erste Zeichen darin zeigt. Wenn die Datei nicht geöffnet werden kann, gibt fopen() NULL zurück.

In

Durchsucht die Datei. Wenn die Datei bereits vorhanden ist, wird ihr Inhalt überschrieben. Wenn die Datei nicht vorhanden ist, wird eine neue Datei erstellt. Gibt NULL zurück, wenn die Datei nicht geöffnet werden kann. Es wird eine neue Datei nur zum Schreiben (kein Lesen) erstellt.

A

sdlc

Durchsucht die Datei. Wenn die Datei erfolgreich geöffnet wurde, lädt fopen() sie in den Speicher und richtet einen Zeiger ein, der auf das letzte Zeichen darin zeigt. Wenn die Datei nicht vorhanden ist, wird eine neue Datei erstellt. Gibt NULL zurück, wenn die Datei nicht geöffnet werden kann. Die Datei wird nur zum Anhängen (Schreiben am Ende der Datei) geöffnet.

r+

Durchsucht die Datei. Öffnet die Datei sowohl zum Lesen als auch zum Schreiben . Bei erfolgreichem Öffnen lädt fopen() es in den Speicher und richtet einen Zeiger ein, der auf das erste Zeichen darin zeigt. Gibt NULL zurück, wenn die Datei nicht geöffnet werden kann.

w+

Durchsucht die Datei. Wenn die Datei vorhanden ist, wird ihr Inhalt überschrieben. Wenn die Datei nicht vorhanden ist, wird eine neue Datei erstellt. Gibt NULL zurück, wenn die Datei nicht geöffnet werden kann. Der Unterschied zwischen w und w+ besteht darin, dass wir auch die mit w+ erstellte Datei lesen können.

a+

Durchsucht die Datei. Wenn die Datei erfolgreich geöffnet wurde, lädt fopen( ) sie in den Speicher und richtet einen Zeiger ein, der auf das letzte Zeichen darin zeigt. Wenn die Datei nicht vorhanden ist, wird eine neue Datei erstellt. Gibt NULL zurück, wenn die Datei nicht geöffnet werden kann. Die Datei wird zum Lesen und Anhängen (Schreiben am Ende der Datei) geöffnet.

rb

Öffne das Binärdatei im Lesemodus. Wenn die Datei nicht existiert, gibt die Funktion open() NULL zurück.

wb

Öffne das Binärdatei im Schreibmodus. Da der Zeiger auf den Anfang der Datei gesetzt ist, wird die Inhalte werden überschrieben. Wenn die Datei nicht existiert, a neue Datei wird erstellt.

ab

Öffne das Binärdatei im Anhängemodus. Der Dateizeiger ist gesetzt nach dem letzten Zeichen in der Datei . A neue Datei wird erstellt wenn keine Datei mit diesem Namen existiert.

rb+

Öffne das Binärdatei im Lese- und Schreibmodus. Wenn die Datei nicht existiert, gibt die Funktion open() NULL zurück.

wb+

Öffne das Binärdatei im Lese- und Schreibmodus. Der Inhalt wird überschrieben, wenn die Datei vorhanden ist. Sie wird erstellt, wenn die Datei nicht existiert.

ab+

Öffne das Binärdatei im Lese- und Anhängemodus. Eine Datei wird erstellt, wenn die Datei nicht vorhanden ist.

Rückgabewert

  • Die Funktion wird verwendet, um einen Zeiger auf FILE zurückzugeben, wenn die Ausführung erfolgreich ist, andernfalls wird NULL zurückgegeben.

Beispiel für fopen()

C




// C program to illustrate fopen()> #include> #include> int> main()> {> >// pointer demo to FILE> >FILE>* demo;> >// Creates a file 'demo_file'> >// with file access as write-plus mode> >demo =>fopen>(>'demo_file.txt'>,>'w+'>);> >// adds content to the file> >fprintf>(demo,>'%s %s %s'>,>'Welcome'>,>'to'>,> >'techcodeview.com'>);> >// closes the file pointed by demo> >fclose>(demo);> >return> 0;> }>

>

>

Machen Sie eine While-Schleife in Java

Wenn Sie den folgenden Befehl ausführen, wird eine neue Datei mit dem Namen erstellt demo_file.txt mit folgendem Inhalt:

Welcome to techcodeview.com>

Wenn wir uns nun die Datei ansehen möchten, müssen wir den folgenden Code ausführen, der die Datei öffnet und ihren Inhalt anzeigt.

C




// C program to illustrate fopen()> #include> int> main()> {> >// pointer demo to FILE> >FILE>* demo;> >int> display;> >// Creates a file 'demo_file'> >// with file access as read mode> >demo =>fopen>(>'demo_file.txt'>,>'r'>);> >// loop to extract every characters> >while> (1) {> >// reading file> >display =>fgetc>(demo);> >// end of file indicator> >if> (>feof>(demo))> >break>;> >// displaying every characters> >printf>(>'%c'>, display);> >}> >// closes the file pointed by demo> >fclose>(demo);> >return> 0;> }>

>

>

Ausgabe

Welcome to techcodeview.com>

Weitere Artikel zum Dateihandling in C:

  1. Grundlagen der Dateiverwaltung in C
  2. fopen() für eine vorhandene Datei im Schreibmodus
  3. EOF, getc() und feof() in C
  4. Dateiöffnungsmodi (r versus r+)