IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

séparation de chaîne


Sujet :

C++

  1. #1
    Membre confirmé
    Homme Profil pro
    Chef de produit
    Inscrit en
    Mai 2006
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Chef de produit

    Informations forums :
    Inscription : Mai 2006
    Messages : 164
    Par défaut séparation de chaîne
    Bonjour,
    j'essaye de faire un petit prog en C++.
    voila mon problème:
    j'ai un fichier texte sous cette forme avec des valeurs :
    0.011494;0.0017241;0.0017625;0.0017554;0.0017545;1;45;36;47

    et je veux récupérer les valeurs entre les <;>

    mon idée c'est utiliser les librairie de boost mais si vous avez d'autre idée je suis prenant.


    Merci d'avance.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    780
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 780
    Par défaut
    utiliser un std::getline avec un ";" en paramètre, pour parcourir chaque valeur.

    voir la FAQ C++

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    char * pch;
    char * chaine = new char[256];
     
    ifstream lect(nomFichier);
           if(!lect)
                    cerr << "Impossible d'ouvrir le fichier" << endl;
           else{
                while(lect.getline(chaine, 256)){
    			                           pch=strtok(chaine, ";");
                 }
                 //ce que tu récupère est dans pch
    voilà normalement ça devrait marcher.

    Avec un petit #include <fstream>

    ^^
    Cordialement

  4. #4
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 644
    Par défaut
    Salut,

    Et, en C++, cela peut meme s'effectuer sous la forme de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    #include <string> //permet d'avoir recours aux chaines de caractères
    #include <vector> //permet d'avoir recours aux tableaux
    #include <fstream> //permet d'accéder aux fichiers
    #inlcude <sstream> //permet la conversion obj-->chaine-->obj
    std::vector<float> Lecture(const std::string& filename)
    {
        std::string toread;
        std::vector<float> recup;//un tableau contenant les réels récupérés
        std::ifstream ifs(filename.c_str());
        while(std::getline(ifs, toread,';'))
        {
             std::stringstream ss;
             ss<<toread;
             float fini;
             ss>>fini;
             recup.push_back(fini);
        }
        return recup;
    }
    En effet, l'utilisation de chaines de caractères "C style" n'est que "moyen moyen" en C++ :p (et bon, j'ai quand meme été un peu plus loin dans certains cas )
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/02/2013, 01h08
  2. Réponses: 12
    Dernier message: 30/05/2008, 11h39
  3. Séparation des lettres et des chiffres d'une chaîne
    Par camoa dans le forum Assembleur
    Réponses: 2
    Dernier message: 24/01/2007, 17h46
  4. Comptage de mots dans une chaîne
    Par kikinou dans le forum Pascal
    Réponses: 10
    Dernier message: 01/01/2003, 02h27
  5. Réponses: 3
    Dernier message: 09/05/2002, 01h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo