Partage
  • Partager sur Facebook
  • Partager sur Twitter

Vérifier si fichier vide

    30 mai 2008 à 18:41:42

    Bonsoir à tous, j'aimerais savoir comment vérifier (en c++) si un fichier .txt est vide ou non, je pense que c'est possible avec les ofstream, mais je ne sais pas comment.
    J'aimerais ainsi lancer certaines instructions s'il est vide, et d'autres si il est rempli, voilà merci bien à ceux qui m'aideront !
    • Partager sur Facebook
    • Partager sur Twitter
      30 mai 2008 à 18:43:55

      Lit le premier caractère, si c'est EOF c'est qu'il est vide.
      • Partager sur Facebook
      • Partager sur Twitter
        30 mai 2008 à 18:56:35

        Je ne sais pas comment le faire, malgré la lecture des quelques tutos concernant ça sur le site, quelqu'un peut il me dire comment faire ? :/
        • Partager sur Facebook
        • Partager sur Twitter
          30 mai 2008 à 19:44:26

          1) Ouvrir le fichier
          2) Lire le premeir caractère (avec >> par exemple)
          3) Tester si ce caractère est EOF.
          4) Si oui le fichier est vide.

          Cela fait 4 lignes de code. Je te laisse chercher tout seul la syntaxe, je suis sûr que tu y arriveras.
          • Partager sur Facebook
          • Partager sur Twitter
          Co-auteur du cours de C++. ||| Posez vos questions sur le forum ||| Me contacter.
            31 mai 2008 à 10:06:26

            Justement, il ne me met pas "eof" mais " ", je me suis débrouillé autrement, en contournant la verification du fichier vide pour faire un test si le fichier était rempli, avec un else pour fichier vide.
            • Partager sur Facebook
            • Partager sur Twitter
              31 mai 2008 à 10:39:34

              EOF est une constante définie dans <cstdio>.
              • Partager sur Facebook
              • Partager sur Twitter
                31 mai 2008 à 15:39:26

                La méthode peek() de istream (donc, ifstream également) lit le premier caractère sans l'extraire du flux. Si ce caractère est la fin de fichier, la méthode activera les flags correspondants, et alors, la méthode eof() de ce même flux retournera true.

                En espérant que ça puisse t'aider...
                • Partager sur Facebook
                • Partager sur Twitter
                  1 juin 2008 à 14:46:28

                  Citation : Nanoc

                  1) Ouvrir le fichier
                  Cela fait 4 lignes de code. Je te laisse chercher tout seul la syntaxe, je suis sûr que tu y arriveras.



                  Quel intérêt d'ouvrir le fichier ?!
                  Ca se fait évidemment en 1 ligne de code, sans ouvrir le fichier.
                  Je te laisse chercher tout seul la syntaxe, je suis sûr que tu y arriveras...
                  • Partager sur Facebook
                  • Partager sur Twitter
                  Anonyme
                    1 juin 2008 à 14:55:28

                    > carly : simplement avec la S(T)L?
                    • Partager sur Facebook
                    • Partager sur Twitter
                      1 juin 2008 à 14:56:14

                      Citation : carly


                      Quel intérêt d'ouvrir le fichier ?!


                      -.- Pas de commantaires...
                      • Partager sur Facebook
                      • Partager sur Twitter
                        1 juin 2008 à 16:13:34

                        Citation : carly

                        Quel intérêt d'ouvrir le fichier ?!



                        Tient dont, je savais pas qu'on pouvait vérifier le contenu d'un fichier sans avoir ouvert de flux dessus...
                        • Partager sur Facebook
                        • Partager sur Twitter
                          1 juin 2008 à 16:22:45

                          oui il est possible de recupérer la taille d'un fichier sans l'ouvrir, mais ce n'est pas portable
                          • Partager sur Facebook
                          • Partager sur Twitter
                          Anonyme
                            2 juin 2008 à 0:32:02

                            Citation : carly

                            Citation : Nanoc

                            1) Ouvrir le fichier
                            Cela fait 4 lignes de code. Je te laisse chercher tout seul la syntaxe, je suis sûr que tu y arriveras.



                            Quel intérêt d'ouvrir le fichier ?!
                            Ca se fait évidemment en 1 ligne de code, sans ouvrir le fichier.
                            Je te laisse chercher tout seul la syntaxe, je suis sûr que tu y arriveras...


                            C'est vite dit je trouve :o !
                            Facile comme argument que tu tiens là... J'attends ta solution par contre. ;)
                            • Partager sur Facebook
                            • Partager sur Twitter

                            Vérifier si fichier vide

                            × 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