Partage
  • Partager sur Facebook
  • Partager sur Twitter

[C++] Capture de chaines formattées

Pour une utilisation équivalente au scanf

    7 juin 2006 à 15:02:40

    Bonjour à tous !
    Je suis en train de faire un petit programme, dans lequel j'ai besoin d'utiliser les objets, ce qui implique l'utilisation du C++ à la place du C.
    Mon programme doit aller chercher plusieurs informations dans un fichier externe. Il doit capturer (à plusieurs reprises, mais le problème viens pas de la répétition) une chaine de caractères et des nombres.
    Supposons que le fichier soit de ce type :

    type_info:../repertoire/fichier.ext,123,65;
    type_info2:../repertoire/fichier.ext,123,65;

    En C, il suffirais de faire un scanf avec les propriétés suivantes :

    fscanf(fichier,"%[a-zA-Z.\\/-]:%d,%d;\n", chaine, &int1, &int2);


    Mais en C++, je n'ai pas trouvé comment faire ! J'ai beau chercher, je trouve juste comment lire dans un fichier sans 'oublier' de caractères, en utilisant la classe ifstream :

    ifstream fichier("fichier.txt");
    /* Problème pour ne lire que les caractère qui m'interresse et m'arréter au : */
    fichier >> chaine;
    /* problème pour sauter par-dessus des : */
    /* etc... */


    Voila, si vous saviez comment utiliser ifstream de manière à obtenir ce que je veux, ça me serais bien utile...

    Et aussi, j'ai une question : est-ce qu'on a "le droit" d'utiliser la bibliothèque cstdio et scanf si on veux faire du C++ standart ??

    Voila, merci d'avance !
    • Partager sur Facebook
    • Partager sur Twitter
      7 juin 2006 à 21:18:47

      Je ne suis pas un boss du C++ mais le C marche dans le C++.
      Donc tu peut mettre cstdio et ton scanf. Mais il existe autre chose en C++ avec:
      fin >> truc et truc;
      /*le f c'est fichier et in c'est à l'intérieur mais je ne sais pas trop l'utiliser maintenant.*/
      • Partager sur Facebook
      • Partager sur Twitter
        7 juin 2006 à 21:33:31

        bah, je peux faire fichier >> var1 >> var2 puisque fichier >> var1 retourne fichier, mais je sais pas comment "oublier de lire" le':', ni comment lire juste la chaîne de certains caractères...
        Enfin, je vais le faire avec fscanf provisoirement, et si je trouve comment faire, je modifierais...

        Merci bien !
        • Partager sur Facebook
        • Partager sur Twitter

        [C++] Capture de chaines formattées

        × 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