voila mon probleme :

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
 
long p;
char c;
 
ifstream fichier;
 
fichier.open("test2.txt");// abc...xyz chaque lettre sur une ligne
 
 
c = fichier.get(); //a
c = fichier.get(); //\n
c = fichier.get(); //b
c = fichier.get(); //\n
 
p = fichier.tellg();
 
c = fichier.get(); //c
c = fichier.get(); //\n
 
fichier.seekg(p);
 
c = fichier.get(); //?
 
cout << c;
Le cout affichera un peu ce qu'il veut, alors que je veux qu'il affiche c.
J'aimerais savoir si il etait donc possible de connaitre notre position dans le fichier lors de sa manipulation? Et donc sauvegarder cette donnee pour l'utiliser plus tard affin de revenir a notre ancienne position.

j'ai trouve deux solution pour m'eviter ce probleme, mais j'aimerais quand meme savoir si ce que je demande est possible.

mes deux sol:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
char mybuffer [10];
fichier.rdbuf()->pubsetbuf(mybuffer,10);
on force le buffer a 1

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
stringstream fichier;
ifstream _fichier;
_fichier.open("test2.txt");
fichier << _fichier.rdbuf();
on charge le fichier en memoire (merci la faq )