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 :

prb de conversion de données


Sujet :

C++

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 147
    Par défaut prb de conversion de données
    Salut à tous,
    voilà le problème auquel je suis connfronté (prb assez banal):
    je dois lire un fichier et convertir les données sous différentes structures de données.
    j'ai convertie des tableau en format texte en int à des tableau de données en int aussi.

    Je n'arrive pas à convertir ce même tablea au format text en tableau de float ...

    voilà le code:
    **********************************
    char * cstr3;
    cstr3 = new char [ligne.size()+1];
    strcpy (cstr3, ligne.c_str());
    map_Cij[num_L2]=sep_termListDouble(cstr);
    **********************************
    list<float> sep_termListFloat(char *Chaine_Entrante){

    list <float> ele;
    //cout << *Chaine_Entrante<<endl;
    char *pointeur;
    char *separateur = { " " }; // Le séparateur
    char *buffer;
    //char *Chaine_Entrante="bonjour je m'appelle Trinita";
    int nb_mot=1;

    buffer = strdup ( Chaine_Entrante );

    // premier appel,
    pointeur = strtok( Chaine_Entrante, separateur );
    //conversion String -> float
    /*float x;
    sscanf((LPCSTR)pointeur,"%f",&x);*/

    ele.push_back(atof(pointeur));
    cout<<"Lecture du mot N° "<<nb_mot<<" Nombre : "<< atof(pointeur)<<endl;
    //cout <<"Pointeur = "<<pointeur<<endl;

    while( pointeur != NULL )
    {
    // Cherche les autres separateur
    pointeur = strtok( NULL, separateur );
    if ( pointeur != NULL ){
    nb_mot++; // increment du nombre de mot
    ele.push_back(atof(pointeur));
    cout<<"Lecture du mot N° "<<nb_mot<<" Nombre : "<< atof(pointeur)<<endl;
    }//if ( pointeur != NULL )
    }
    return ele;
    }
    ***************************************

    les valer à lire étant du type:
    2109.88 2133.85 1665.58 0


    le code ci dessous me renvoie la valeur 1 por chaque ligne (donc toute les colonnes valent 1)

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 147
    Par défaut
    Alors que le code ci dessous marche trés bien pour des int:

    **********************************
    char * cstr;cstr = new char [ligne.size()+1];
    strcpy (cstr, ligne.c_str());
    map_vkk[num_L2]=sep_termListInt(cstr);
    ************************************
    list<int> sep_termListInt(char *Chaine_Entrante){

    list <int> ele;
    cout << *Chaine_Entrante<<endl;
    char *pointeur;
    char *separateur = { " " }; // Le séparateur
    char *buffer;
    //char *Chaine_Entrante="bonjour je m'appelle Trinita";
    int nb_mot=1;

    buffer = strdup ( Chaine_Entrante );

    // premier appel,
    pointeur = strtok( Chaine_Entrante, separateur );
    ele.push_back(atoi(pointeur));
    //printf ("Lecture du mot N° %d %s\n",nb_mot," Nombre : ", pointeur);
    //cout <<"Pointeur = "<<pointeur<<endl;

    while( pointeur != NULL )
    {
    // Cherche les autres separateur
    pointeur = strtok( NULL, separateur );
    if ( pointeur != NULL ){
    nb_mot++; // increment du nombre de mot
    ele.push_back(atoi(pointeur));
    //printf ("Lecture du mot N° %d %s\n",nb_mot," Nombre : %d %s\n", pointeur);
    }//if ( pointeur != NULL )
    }
    return ele;
    }

    Merci à ceux qui auront le courage de lire tous ça

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 147
    Par défaut
    Finalement tout fonction, j'avais entré la mauvaise chaine de string (cstr au lieu de cstr3)

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

Discussions similaires

  1. [Data] [IBATIS] prb de récuperation de données
    Par iftolotfi dans le forum Spring
    Réponses: 5
    Dernier message: 12/06/2006, 20h52
  2. Conversion de données
    Par noratec dans le forum Access
    Réponses: 3
    Dernier message: 17/03/2006, 17h50
  3. Conversion de données
    Par charliejo dans le forum C++Builder
    Réponses: 3
    Dernier message: 31/01/2006, 09h59
  4. Pb de conversion de données 16 vers 32
    Par Ducmonster dans le forum Langage
    Réponses: 2
    Dernier message: 09/10/2005, 11h53
  5. [JSTL] [SQL] Conversion de données
    Par GiHe dans le forum Taglibs
    Réponses: 4
    Dernier message: 27/09/2005, 10h01

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