Ouvrir un fichier en c

Fermé
c-4 Messages postés 3 Date d'inscription lundi 13 décembre 2010 Statut Membre Dernière intervention 23 janvier 2011 - 18 janv. 2011 à 19:49
Bilow Messages postés 1014 Date d'inscription samedi 21 août 2010 Statut Membre Dernière intervention 2 août 2015 - 19 janv. 2011 à 12:57
Bonjour,
je veux écrire un programme qui permet d'ouvrir un fichier txt avec code::block mais le blem c'est que le fichier ne se créer pas


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

int main()
{FILE *fichier = NULL;
fichier = fopen("fichier.txt", "r+");
if(fichier = NULL)
{
printf("Le fichier n'existe pas");
}
else
{
printf("Le fichier existe et est ouvert en lecture seule");
}
}

je précise que je suis débutant dans le langage c
merci pour ce qui se donneront la penne de me répondre
A voir également:

3 réponses

Bilow Messages postés 1014 Date d'inscription samedi 21 août 2010 Statut Membre Dernière intervention 2 août 2015 117
18 janv. 2011 à 21:17
Salut !

Je cite (source : https://openclassrooms.com/fr/ ) :
"r" : lecture seule. Vous pourrez lire le contenu du fichier, mais pas écrire dedans. Le fichier doit avoir été créé au préalable.

"w" : écriture seule. Vous pourrez écrire dans le fichier, mais pas lire son contenu. Si le fichier n'existe pas, il sera créé.

"a" : mode d'ajout. Vous écrirez dans le fichier, en partant de la fin du fichier. Vous rajouterez donc du texte à la fin du fichier. Si le fichier n'existe pas, il sera créé.

"r+" : lecture et écriture. Vous pourrez lire et écrire dans le fichier. Le fichier doit avoir été créé au préalable.

"w+" : lecture et écriture, avec suppression du contenu au préalable. Le fichier est donc d'abord vidé de son contenu, et vous écrivez et lisez ensuite dedans. Si le fichier n'existe pas, il sera créé.
"a+" : ajout en lecture / écriture à la fin. Vous écrivez et lisez du texte à partir de la fin du fichier. Si le fichier n'existe pas, il sera créé.

Pour créer, ej te conseille de l'ouvrir avec "a"; Il sera créé, et s'il existe, rien ne se passera. Ensuite, si tu veux l'ouvrir en lecture seule, ouvre avec "r" !

fichier = fopen("file", "a"); // crée ou bien ne fait rien s'il existe
fclose(fichier);
fichier = fopen("file", "r"); // Ouvre en lecture seule
fclose(fichier);

Personnellement, je n'ai jamais eu besoin d'utiliser le signe "+" dans la méthode d'ouverture. J'ai réussi à faire tout ce que je souhaitais, seulement avec r, a et w.

Bonne chance !
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 842
18 janv. 2011 à 21:29
Pour créer, ej te conseille de l'ouvrir avec "a"; Il sera créé, et s'il existe, rien ne se passera.
Oui, ou "w". Juste attention en cas d'écriture.

J'ai réussi à faire tout ce que je souhaitais, seulement avec r, a et w.
Cela sert lorsque tu lis et écris en même temps dans un fichier.
0