La fonction fopen () en C ++ ouvre un fichier spécifié dans un certain mode.
prototype fopen ()
FILE * fopen (const char * filename, const char * mode);
La fopen()
fonction prend deux arguments et renvoie un flux de fichiers associé à ce fichier spécifié par l'argument filename.
Il est défini dans le fichier d'en-tête.
Les différents types de mode d'accès aux fichiers sont les suivants:
Mode d'accès aux fichiers | Interprétation | Si le fichier existe | Si le fichier n'existe pas |
---|---|---|---|
"r" | Ouvre le fichier en mode lecture | Lire depuis le début | Erreur |
"w" | Ouvre le fichier en mode écriture | Effacer tout le contenu | Créer un nouveau fichier |
"une" | Ouvre le fichier en mode ajout | Commencez à écrire à partir de la fin | Créer un nouveau fichier |
"r +" | Ouvre le fichier en mode lecture et écriture | Lire depuis le début | Erreur |
"w +" | Ouvre le fichier en mode lecture et écriture | Effacer tout le contenu | Créer un nouveau fichier |
"un +" | Ouvre le fichier en mode lecture et écriture | Commencez à écrire à partir de la fin | Créer un nouveau fichier |
Paramètres fopen ()
- filename: pointeur vers la chaîne contenant le nom du fichier à ouvrir.
- mode: pointeur vers la chaîne qui spécifie le mode dans lequel le fichier est ouvert.
fopen () Valeur de retour
- En cas de succès, la
fopen()
fonction renvoie un pointeur vers l'objet FILE qui contrôle le flux de fichiers ouvert. - En cas d'échec, il renvoie un pointeur nul.
Exemple 1: Ouverture d'un fichier en mode écriture avec fopen ()
#include #include using namespace std; int main() ( int c; FILE *fp; fp = fopen("file.txt", "w"); char str(20) = "Hello World!"; if (fp) ( for(int i=0; i
When you run the program, it will not generate any output but will write "Hello World!" to the file "file.txt".
Example 2: Opening a file in read mode using fopen()
#include using namespace std; int main() ( int c; FILE *fp; fp = fopen("file.txt", "r"); if (fp) ( while ((c = getc(fp)) != EOF) putchar(c); fclose(fp); ) return 0; )
When you run the program, the output will be (Assuming the same file as in Example 1):
Hello World!
Example 3: Opening a file in append mode using fopen()
#include #include using namespace std; int main() ( int c; FILE *fp; fp = fopen("file.txt", "a"); char str(20) = "Hello Again."; if (fp) ( putc('',fp); for(int i=0; i
When you run the program, it will not generate any output but will append "Hello Again" in a newline to the file "file.txt".