Précédent   Forum du club des développeurs et IT Pro > C et C++ > C++ > Débuter
Débuter Forum d'entraide pour débuter en langage de programmation C++. Avant de poster : cours d'initiation au C++
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 26/02/2013, 16h42   #1
smohrt
Invité de passage
 
Femme
Inscription : février 2013
Messages : 4
Détails du profil
Informations personnelles :
Sexe : Femme

Informations forums :
Inscription : février 2013
Messages : 4
Points : 1
Points : 1
Par défaut Positionnement du curseur dans un fichier texte

Bonjour,
J'essaye de placer mon curseur 2 caractères avant la fin de chaque ligne, mais la boucle ne s'arrête jamais lorsque je teste mon code... Pouvez-vous me dire d'où vient le problème ? je ne vois vraiment pas...
Code :
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
28
29
30
31
main ()
{
    ifstream fluxFichier("files/fichier.txt");
 
    if (fluxFichier)
    {
        string ligne;
 
        cout << "Liste des gens passés avant vous :" << endl;
 
        while (getline(fluxFichier, ligne))
        {
 
            cout << ligne << endl;
            int position = fluxFichier.tellg();
            cout << "Le curseur se trouve a l'emplacement " << position << endl;
            position -= 2;
            fluxFichier.seekg(position, ios::beg);
            position = fluxFichier.tellg();
            cout << "Et maintenant" << position << endl;
            position += 2;
 
        }
 
    }
 
    else
    {
        cout << "Erreur lors de l'ouverture du fichier" << endl;
    }
}
smohrt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2013, 17h42   #2
PilloBuenaGente
Membre éclairé
 
Homme
Caissier
Inscription : décembre 2012
Messages : 219
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Caissier

Informations forums :
Inscription : décembre 2012
Messages : 219
Points : 329
Points : 329
Bonjour,
Ta dernière ligne qui doit enregistrer la position ne le fait pas.
Code :
1
2
3
4
5
6
7
8
9
10
11
 
            cout << ligne << endl;
            int position = fluxFichier.tellg();
            cout << "Le curseur se trouve a l'emplacement " << position << endl;
            position -= 2;
            fluxFichier.seekg(position, ios::beg);
            position = fluxFichier.tellg();
            cout << "Et maintenant" << position << endl;
            position += 2;
            //Ici la position qui est créer dans cette fonction est incémenté mais pas enregistrée., Il faudrait rajouter :
            fluxFichier.seekg(position, ios::beg);
PilloBuenaGente est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 26/02/2013, 17h43   #3
smohrt
Invité de passage
 
Femme
Inscription : février 2013
Messages : 4
Détails du profil
Informations personnelles :
Sexe : Femme

Informations forums :
Inscription : février 2013
Messages : 4
Points : 1
Points : 1
Tout simplement... Merci.
smohrt est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 07h45.


 
 
 
 
Partenaires

Hébergement Web