Partage
  • Partager sur Facebook
  • Partager sur Twitter

Écrire dans un fichier.

Sujet résolu
Anonyme
    24 octobre 2006 à 18:33:00

    Bonjour,
    pour un petit programme en console, j'écris dans un fichier grâce au code suivant:


    FILE* fichier = NULL;

    fichier = fopen("score.txt", "w");

    if (fichier != NULL) {
      char pseudonyme[25] = "";

      printf ("Saisissez votre pseudonyme >: ");
      scanf("%s", pseudonyme);
      printf("\n");

      fprintf (fichier, "%s - %ld coup(s)", pseudonyme, nombre_total_de_coups);
      fclose(fichier);
    }

    else
      printf("Impossible d'ouvrir le fichier 'score.txt'\n\n");


    Mais le problème, c'est que quand j'écris de nouveau dans le fichier score, ça écrase les caractères précédements saisies, alors que moi, je voudrais que les caractères saisies aillent à la ligne suivante; en gros je voudrais que ça se présente comme ça dans le fichier score.txt:

    Sebastien - 6 coup(s)
    Helene = 11 coup(s)
    ...

    Voilà, donc si quelqu'un pouvait m'aider,
    Merci.
    • Partager sur Facebook
    • Partager sur Twitter
      24 octobre 2006 à 18:38:47

      C'est normal, tu as initialisé fichier avec le mode "w" qui efface le contenu au préalable ^^

      Fais plutôt ça :
      fichier = fopen("score.txt", "a+");


      ;)

      [EDIT] Tu pouvais aussi faire :
      fichier = fopen("score.txt", "r+");
      fseek(fichier, 0, SEEK_END);
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        24 octobre 2006 à 18:41:17

        Ah oui, c'est pas bête du tout.:p
        Merci PianoPâriss. ^^
        • Partager sur Facebook
        • Partager sur Twitter

        Écrire dans un fichier.

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown