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

SL & STL C++ Discussion :

Re getline / ifstream


Sujet :

SL & STL C++

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 27
    Par défaut Re getline / ifstream
    rebonjour, je reviens vers vous pour un problème qui me rend fou !

    donc voici mon code :

    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
    21
    22
    23
     
    ifstream fichier_nt(rep_fichiers_nt_new.c_str ());
    while (std::getline(fichier_nt, contenu_ligne)) {
        for (int t = 0; t < contenu_ligne.size(); t++) {
            if (contenu_ligne[t]=='\'') {
               contenu_ligne[t] = ' ';
            }
    }
     
    fichier_t << contenu_ligne ;
     
    tab_lignes[num_ligne] = contenu_ligne;	
    //cout << tab_lignes[num_ligne] << endl;
     
    if (num_ligne > 11) {
        reste_lignes = reste_lignes + tab_lignes[num_ligne];		
    }
     
    num_ligne++;						     	
    cout << num_ligne << endl;
    cout << contenu_ligne << endl;
     
    }
    donc normalement, je doit récupérer les lignes une à une du fichier mais lorsque je test, la boucle ne s'effectue une seul fois et tout le fichier se stocke dans la même case du tableau Oo
    donc si qqn a une idée !!

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Août 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 27
    Par défaut
    bon, la je ne vois plus trop, je fait simplement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    string ligne;
    string rep_fichiers_nt = "/home/toto/Desktop/test.txt";
    ifstream fichier_nt(rep_fichiers_nt.c_str ());
    while (getline(fichier_nt,ligne)
    {
           cout << ligne << endl;
    }
    et il m'affiche en boucle la première ligne ...

  3. #3
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Citation Envoyé par le_fif Voir le message
    bon, la je ne vois plus trop, je fait simplement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    string ligne;
    string rep_fichiers_nt = "/home/toto/Desktop/test.txt";
    ifstream fichier_nt(rep_fichiers_nt.c_str ());
    while (getline(fichier_nt,ligne)
    {
           cout << ligne << endl;
    }
    et il m'affiche en boucle la première ligne ...
    Salut,
    Peux tu proposer un copier/coller exact de ton code. Celui ci-dessus ne compilant pas, on ne peut voir l'erreur

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Août 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 27
    Par défaut
    oui c'est vrai,

    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
    21
    22
    23
    24
    25
    26
    27
    using namespace std;	
     
    int main()  {
     
    int num_ligne = 0;					
    string contenu_ligne;			
    string tab_lignes[255];				
    string reste_lignes;			
    const char* nom_fichier;		
     
     
    ofstream fichier_t("/home/toto/Desktop/Serveur de résultats/test.txt", ios::in);
    string rep_fichiers_nt_new = "/home/toto/Desktop/Serveur de résultats/fichiers non traités/09071110144_20090711171858.txt";
    ifstream fichier_nt(rep_fichiers_nt_new.c_str ());
     
    while (getline(fichier_nt, contenu_ligne)) {
     
                                                            cout << contenu_ligne << endl;			
     
    							fichier_t << contenu_ligne;
     
    							num_ligne = num_ligne + 1;
    							cout << num_ligne << endl;
     
     
    						}
    	}
    donc en fait, mon num ligne ne s'incrémente pas et tout le fichier est envoyé dans test lors du premier passage

    qu'ai je fait de mal ^^'

  5. #5
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Salut,
    Ouvres ton fichier en binaire et regarde s'il comprend un fin de ligne (CR (0x0d) ou CRLF (0x0d0x0a) )

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Août 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 27
    Par défaut
    je suis allé chercher mes fichiers txt d'origine et ça passe !
    impossible de savoir pourquoi les caractères de fin de ligne avaient disparus Oo

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

Discussions similaires

  1. ifstream et getline
    Par Invité dans le forum C++
    Réponses: 4
    Dernier message: 30/08/2010, 17h38
  2. erreur ifstream / getline
    Par le_fif dans le forum C++
    Réponses: 3
    Dernier message: 05/10/2009, 11h57
  3. extraction d'un gros fichier ifstream::getline
    Par Invité4 dans le forum SL & STL
    Réponses: 5
    Dernier message: 22/01/2009, 15h13
  4. Problème getline(ifstream, string)
    Par OliverSleep dans le forum C++Builder
    Réponses: 2
    Dernier message: 24/05/2007, 17h09
  5. Probleme avec ifstream
    Par maitre hibou dans le forum SL & STL
    Réponses: 12
    Dernier message: 12/05/2004, 13h33

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