Partage
  • Partager sur Facebook
  • Partager sur Twitter

[C] Ecrire directement dans un fichier texte

Sans passer par une variable

Sujet résolu
    22 avril 2006 à 13:28:16

    Bonjour :) ,


    Je voudrais savoir si il serait possible d'écrire dans la console et que et même temps que l'on écrive dans la console, le texte écrit dans la console s'écrive dans le fichier texte (.txt) MAIS le problème, c'est que je veux que ça se fasse SANS VARIABLES ( pourquoi il y a plus personne ? o_O ), c'est comme si on écrivais directement dans le fichier .txt mais en passant par la console.

    Je me demandais, est ce possible ? :-°

    Si oui, ce serait gentill de me dire comment faire :D


    Merci d'avance ^^
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      22 avril 2006 à 13:31:35

      Ben à chaque printf, tu fais un fprintf...
      • Partager sur Facebook
      • Partager sur Twitter
        22 avril 2006 à 13:48:05

        Oui, mais tu devra passer par uen variable ;)

        Exemple:

        L'utilisateur est entrain de taper un texte...
        Pendant ce temps, le programme va automatiquement mettre tous ce que l'utilisateur est entrain de taper dans un fichier texte SANS VARIBALES ^^

        C'est possible ? :)
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          22 avril 2006 à 13:51:53

          Comment ça sans variables? A mon avis, je pense qu'en le lançant en faisant
          prog.exe > fichier.txt

          ça devrait marcher mais pas sûr
          Edit: ça marche pas vraiment: TOUT les printf et autre bidules qui affichent du texte sont redirigés dedans, et ce qu'on tape non. Désolé je me suis trompé
          • Partager sur Facebook
          • Partager sur Twitter
            22 avril 2006 à 13:55:06

            Je sais que ça paraît fou sans variable :p , mais je me demandais si c'était possible, ce l'est ? :)

            [EDIT pour Ze Moi] Merci quand même ^^ ( Mais j'avais déja essaié :D )
            • Partager sur Facebook
            • Partager sur Twitter
              22 avril 2006 à 14:01:33

              Essaie peut etre fprintf(fichier.txt, "Test : %d", 8);
              • Partager sur Facebook
              • Partager sur Twitter
                22 avril 2006 à 14:03:05

                Citation : PianoPâriss

                Bonjour :) ,


                Je voudrais savoir si il serait possible d'écrire dans la console et que et même temps que l'on écrive dans la console, le texte écrit dans la console s'écrive dans le fichier texte (.txt)


                Avec freopen(), tu peux rediriger stdout vers un fichier texte, mais ça n'écrira plus dans la console.

                Sinon, tu peux faire une fonction 'variadic' qui enverra le texte à la fois vers stdout et un fichier...

                int my_printf(FILE *fp_out, char const *fmt, ...)
                {
                }

                et pour coder la fonction, il faut utiliser <stdarg.h>, les va_arg, vprintf(), vfprintf() etc.

                C'est du C 'avancé', mais c'est faisable. Il faut connaître les 'variadics'. (K&R2, chapitre 7.3, et annexe B7)
                • Partager sur Facebook
                • Partager sur Twitter
                Music only !
                  22 avril 2006 à 14:09:13

                  Sympa les variadics ! Je me demandais justement comment c'était possible une fonction avec nombre d'argument variable et comment acceder après aux arguments.
                  La simple évocation du mot m'a permis de trouver les réponses.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    22 avril 2006 à 14:12:43

                    Merci beaucoup de toutes vos réponses :)

                    Mais, je crois que j'ai du pain sur la planche... :-°
                    • Partager sur Facebook
                    • Partager sur Twitter

                    [C] Ecrire directement dans un fichier texte

                    × 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