Maison  >  Article  >  développement back-end  >  En langage C, utilisez la fonction fopen() pour ouvrir un fichier existant en mode écriture

En langage C, utilisez la fonction fopen() pour ouvrir un fichier existant en mode écriture

王林
王林avant
2023-08-27 22:33:101164parcourir

En langage C, utilisez la fonction fopen() pour ouvrir un fichier existant en mode écriture

La méthode fopen() en C est utilisée pour ouvrir le fichier spécifié.

Prenons un exemple pour comprendre le problème

Syntaxe

FILE *fopen(filename, mode)

Voici les modes valides pour ouvrir des fichiers à l'aide de fopen() : 'r', 'w', 'a', 'r+', 'w+ ', 'a+'. Pour plus d'informations, veuillez visiter les fonctions de la bibliothèque C - fopen()

fopen() pour ouvrir un fichier existant en mode écriture

Si le fichier à ouvrir n'existe pas dans le répertoire courant, un nouveau fichier vide est créé en mode écriture .

Si le fichier à ouvrir existe dans le répertoire courant et est ouvert en utilisant 'w' / 'w+', le contenu sera supprimé avant l'écriture.

Exemple

Exemple procédural illustrant le fonctionnement de notre solution

#include <stdio.h>
#include <stdlib.h>

int main(){

   FILE *opFile = fopen("test.txt", "w");
   if (opFile == NULL){

      puts("Couldn&#39;t open file");
      exit(0);
   }
   else{

      fputs("includehelp", opFile);
      puts("Write operation successful");
      fclose(opFile);
   }
   return 0;
}

Sortie

Write operation successful

Contenu initial du fichier - Langage de programmation C

Contenu après l'opération d'ajout - Aide incluse

L'opération d'écriture sera exécutée. fonctionne, mais supprime tout ce qui était présent dans le fichier avant l'exécution de l'opération d'écriture. Pour résoudre ce problème, le langage de programmation C a été mis à jour avec deux méthodes différentes que les programmeurs peuvent utiliser en fonction des exigences du programme.

  • Mode « a » (ajouter) - Ce mode ajoute un nouveau contenu à la fin de ce qui a déjà été écrit dans le fichier.

  • Mode ‘wx’ - Renvoie NULL si le fichier existe déjà dans le répertoire.

Exemple

Démontre un programme pour écrire dans un fichier existant en utilisant le mode 'a'

#include <stdio.h>
#include <stdlib.h>

int main(){

   FILE *opFile = fopen("test.txt", "a");
   if (opFile == NULL){

      puts("Couldn&#39;t open file");
      exit(0);
   }
   else{

      fputs("includehelp", opFile);
      puts("Write operation successful");
      fclose(opFile);
   }
   return 0;
}

Sortie

Write operation successful

Contenu initial du fichier− Langage de programmation C

Contenu après l'opération d'ajout− Langage de programmation C includehelp

Exemple

Un programme pour écrire sur un fichier existant en utilisant le mode 'wx'

#include <stdio.h>
#include <stdlib.h>

int main(){

   FILE *opFile = fopen("test.txt", "wx");
   if (opFile == NULL){

      puts("Couldn&#39;t open file");
      exit(0);
   }
   else{

      fputs("includehelp", opFile);
      puts("Write operation successful");
      fclose(opFile);
   }
   return 0;
}

Output

Write operation successful

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer