IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Ecrire dans un fichier sans effacer les nombres précédents


Sujet :

C

  1. #1
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 70
    Points : 42
    Points
    42
    Par défaut Ecrire dans un fichier sans effacer les nombres précédents
    bonjour,
    Mon main.c appelle une fonction qui écrit un nombre dans un fichier mais a chaque fois il efface le nombre précédent alors que je voudrais tous les nombres à la suite (tout en gardant le main et la fonction séparée). Que dois faire? voici mon code dans la fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     if (fichier1 != NULL)
        {
    	for (i=0; i<m; i++)
    	{	   
    	    S = S + log(E1[i])/R;
    	}
    	S = S/i;
    	fprintf(fichier1,"%lf ",S);
     
        }
        fclose(fichier1);
    merci

  2. #2
    Membre actif
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 487
    Points : 294
    Points
    294
    Par défaut
    Si le nombre est écrasé dans l’ouverture cela veut dire que tu ouvre ton fichier texte en mode write tu dois l’ouvrir en mode append
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    File *f=fopen(nom, "a+") ;

  3. #3
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 70
    Points : 42
    Points
    42
    Par défaut
    Je te remercie, on se perd toujours un peu dans les options.

  4. #4
    Membre actif
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 487
    Points : 294
    Points
    294
    Par défaut
    C’est ça le problème ?

  5. #5
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par dot-_-net Voir le message
    Si le nombre est écrasé dans l’ouverture cela veut dire que tu ouvre ton fichier texte en mode write tu dois l’ouvrir en mode append
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    File *f=fopen(nom, "a+") ;
    Pourquoi "a+" ? "a" suffit, non ?
    Pas de Wi-Fi à la maison : CPL

  6. #6
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par kharg Voir le message
    Je te remercie, on se perd toujours un peu dans les options.
    C'est pourtant simple :

    Fichiers textes :

    "r" comme read (lecture)
    "w" comme write (écriture)
    "a" comme append (ajout)

    C'est si dur que ça de s'en souvenir ? Je ne te conseille pas de faire médecine si tu as des problèmes de mémoire...

    Pour les fichiers binaires, il suffit d'ajouter "b" comme binary... : "rb", "wb", "ab".

    Pour le moment, oublie les modes avec '+', car là, c'est l'embrouille garantie...
    Pas de Wi-Fi à la maison : CPL

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ecrire sur fichier sans effacer les données
    Par kimikimi dans le forum Débuter
    Réponses: 2
    Dernier message: 01/07/2010, 09h56
  2. Ecrire dans un fichier sans effacer le reste
    Par HuBear dans le forum Langage
    Réponses: 4
    Dernier message: 17/03/2007, 15h04
  3. Ecrire dans un fichier sans effacer son ancien contenu.
    Par Mysti¢ dans le forum Général Python
    Réponses: 4
    Dernier message: 03/11/2006, 14h18
  4. [VBA-E]Ecrire dans un fichier sans l'ouvrir (ou dans un fichier invisible)
    Par bandit boy dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 29/05/2006, 17h14
  5. Ecrire dans un fichier sans supprimer le reste
    Par koan_sabian dans le forum Linux
    Réponses: 4
    Dernier message: 20/02/2003, 15h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo