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 :

std::getline avec des délimiteurs encadrant une chaîne vide


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif

    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2014
    Messages : 103
    Par défaut std::getline avec des délimiteurs encadrant une chaîne vide
    Bonjour,

    Actuellement je suis en train de parser une ligne contenant des délimiteurs :

    J'ai le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    std::vector<std::string> colonnes;
    std::string ligne = "e;f;;g";
    std::string colonne;
    std::stringstream sligne(ligne);	
     
    while (std::getline(sligne, colonne, ";"))
    {
         colonnes.push_back(colonne);
    }
    getline semble omettre ma colonne vide. Or je voudrais que cette colonne vide soit prise en compte et que le troisième élément de mon vecteur colonnes soit vide. Comment faire ?

    Merci pour votre aide !

  2. #2
    Expert éminent

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 202
    Par défaut
    Je suis surpris, normalement, le 3° champ est un char (';'), pas une chaine (";").

  3. #3
    Membre très actif

    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2014
    Messages : 103
    Par défaut
    Citation Envoyé par leternel Voir le message
    Je suis surpris, normalement, le 3° champ est un char (';'), pas une chaine (";").
    C'est vrai, il n'y a compilation que si le troisième champ est un char.

    Fausse alerte, j'ai testé getline dans un code à part et le comportement que je désire (récupérer la troisième colonne vide) a bien lieu. En fait, c'est le format des données d'entrée qui était incorrect !

    Désolé.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Piratage possible ou non avec des infors d'une form ?
    Par roudoudouduo dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 16/10/2006, 20h45
  2. Suppression des espaces ds une chaîne
    Par petitnuage dans le forum Langage
    Réponses: 2
    Dernier message: 04/06/2006, 15h59
  3. probleme avec des calculs et une requete de mise a jour
    Par el_quincho dans le forum Access
    Réponses: 2
    Dernier message: 16/03/2006, 10h06
  4. Liaison avec des images dans une table
    Par ValérieBruxelles dans le forum Access
    Réponses: 5
    Dernier message: 25/11/2005, 14h21

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