Partage
  • Partager sur Facebook
  • Partager sur Twitter

ecrire dans un fichier texte via une variable

Sujet résolu
    30 août 2007 à 20:39:41

    Bonjour tout le monde,

    Je vous explique mon problème:
    en fait je voudrais pouvoir écrire dans un fichier texte (ca je peut le faire grace au cours de Matéo :D ),
    mais mon problème c'est que je voudrais que ce soit ce qu'écrive l'utilisateur a travers mon programme :euh: .
    Je sais pas si c'est tres clair...

    En tous cas si quelqu'un m'a compris et qu'il peut résoudre mon problème je le remercie d'avance!

    ecd@
    • Partager sur Facebook
    • Partager sur Twitter
      30 août 2007 à 20:46:40

      Bonjour,

      Tu dit a l'utilisateur d'écrire dans une chaine et tu copie la chaine dans le fichier :) .
      (Si c'est ce que tu veux car je n'est pas bien compris... :o )
      • Partager sur Facebook
      • Partager sur Twitter
        30 août 2007 à 20:49:03

        precise: c'est en mode console ou fenetre(sdl)?
        si j'ai bien compris tu veut que l'utilisateur ecrive dans ton programme et que le programme enregistre ce qu'il a écrit dans un fichier texte ?
        • Partager sur Facebook
        • Partager sur Twitter
          30 août 2007 à 22:29:59

          Citation : ecda


          en fait je voudrais pouvoir écrire dans un fichier texte (ca je peut le faire grace au cours de Matéo :D ),
          mais mon problème c'est que je voudrais que ce soit ce qu'écrive l'utilisateur a travers mon programme :euh: .


          Tu fais une saisie de lignes avec fgets(), et tu écris ces lignes dans un fichiers avec fputs(). Il n'y a aucune difficulté particulière si tu sais manipuler les fichiers. Fait de ton mieux et poste ton code.

          • Partager sur Facebook
          • Partager sur Twitter
          Music only !
            31 août 2007 à 7:53:11

            Merci tous le monde je suis en console mais je n'arrivait pas a rentrer la variable grace au fputs :

            char* fputs(const char* chaine, FILE* pointeurSurFichier);

            int main(int argc, char *argv[])
            {
            char nom[50];

            printf("quel est votre nom : ");
            scanf("%ld", nom)

            FILE* fichier = NULL;

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

            if (fichier != NULL)
            {
            fputs(, fichier);
            // c'est la que ca cloche: je voudrait mettre fputs("%ld", nom,fichier), mais il faudrais que je change le prototype et je ne vois pas comment :( . Voila j'espère que c'est plus clair maintenant^^
            fclose(fichier);
            }

            return 0;
            }

            ecd@
            • Partager sur Facebook
            • Partager sur Twitter
              31 août 2007 à 8:36:03

              Merci d'utiliser les balises de code.

              Citation : ecda

              Merci tous le monde je suis en console mais je n'arrivait pas a rentrer la variable grace au fputs :


              1. #include <stdlib.h>             /* system() */
              2. /* -ed-
              3. char* fputs(const char* chaine, FILE* pointeurSurFichier);
              4. Non. Rien n'est plus juste que
              5. */
              6. #include <stdio.h>
              7. /* -ed- parametres non utilises...
              8. int main(int argc, char *argv[])
              9. */
              10. int main (void)
              11. {
              12.    char nom[50];
              13.    printf ("quel est votre nom : ");
              14. /* -ed-
              15.     scanf("%ld", nom)
              16. "%ld" pour une chaine, ca va pas le faire. C'est "%s" (au minimum). J'avais conseille fgets(), ce n'est pas pour rien; scanf() est une fonction complexe...
              17. */
              18.    fgets (nom, sizeof nom, stdin);
              19.    FILE *fichier = NULL;
              20.    fichier = fopen ("test.txt", "w");
              21.    if (fichier != NULL)
              22.    {
              23. /* -ed-
              24.         fputs(, fichier);
              25. // c'est la que ca cloche: je voudrait mettre fputs("%ld", nom,fichier), mais il faudrais que je change le prototype et je ne vois pas comment :( . Voila j'espère que c'est plus clair maintenant^^
              26. Changer le prototype d'une fonction standard ? Tu es tombé sur la tête ? Ce qu'il faut surtout, c'est utiliser la fonction correctement :
              27. */
              28.       fputs (nom, fichier);
              29.       fclose (fichier);
              30.    }
              31. /* verification (MS-DOS/Windows) */
              32.    system ("type test.txt");
              33.    return 0;
              34. }

              Voilà, c'est pas plus compliqué que ça, du moins pour le principe, car en réalité, il manque quelques traitements de sécurité.

              quel est votre nom : Emmanuel Delahaye
              Emmanuel Delahaye
              Press ENTER to continue.
              • Partager sur Facebook
              • Partager sur Twitter
              Music only !
                1 septembre 2007 à 8:33:43

                D'accord merci beaucoup pour le code.

                Amicalement

                Ecd@
                • Partager sur Facebook
                • Partager sur Twitter

                ecrire dans un fichier texte via une variable

                × 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