Partage
  • Partager sur Facebook
  • Partager sur Twitter

Pointeur et String

    7 août 2008 à 13:20:03

    salut!
    j'ai ouvert un fichier CSV avec Qt dont je recupère le texte ligne par ligne. Là je voudrai recuperer les différents String dans le texte mais le Pb c'est avec la fonction j'arrive bien à repupérer les Strings mais je n 'arrive à les sauvegarder voici le code

    for(int i=0; i<stringliste.size();++i)
                    {
                            string tempstring1= stringliste[i].toStdString();
                            // Von char* zu String
                            size_t size = tempstring1.size() + 1;
                            char * buffer = new char[ size ];
                            // copier la chaîne
                            strncpy( buffer, tempstring1.c_str(), size);
                            //cout<<buffer<<endl;
                            
                            char*SBuffer=NULL;
                            //char* separateur;
                            
                            SBuffer=strtok(buffer,";\22");
                            while (SBuffer != NULL)
                            {
                                    //char* StringBuffer[1024];
                                     StringBuffer[i]=SBuffer;
                                     cout<<i<<":"<<StringBuffer[i]<<endl;
                                     // ici j'ai tout le contenus de StringBuffer
                                 SBuffer= strtok(NULL,";");
                                  
                             } 
                             cout<<i<<StringBuffer[i]<<endl;
                             // ici j'ai juste StringBuffer les Derniers elements de SBuffer dans StringBuffer 
                             delete[]buffer;
                    


    Merci de m'aider
    • Partager sur Facebook
    • Partager sur Twitter
      7 août 2008 à 13:31:27

      La variable dans laquelle tu stockes tes strings dois être crée avant ta boucle.

      Si elle est crée dedans, elle est également supprimé dedans, donc tu ne peux rien en tirer.

      int maFonction()
      {
        int variableA = 0;
        // variableA est crée
      
        while (variableA != 10)
        {
           int variableB = variableA;
           // variableB est crée
           variableA++;
        } 
        // variableB est détruite
      
        return variableA; // variable A est détruite
      }
      


      Si tu veux conserver variableB, tu dois la créer avant la boucle.

      A toi de faire pareil dans ton code.
      • Partager sur Facebook
      • Partager sur Twitter
        7 août 2008 à 13:37:23

        char* String a été créer avant la boucle
        la déclaration je l'ai mis en commentaire en guise d'incation
        • Partager sur Facebook
        • Partager sur Twitter

        Pointeur et String

        × 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