basic_istream::seekg
Déplace la position de lecture dans un flux.
basic_istream<Elem, Tr>& seekg(
pos_type pos
);
basic_istream<Elem, Tr>& seekg(
off_type off,
ios_base::seekdir way
);
Paramètres
pos
La position absolue dans laquelle déplacer le pointeur lu.off
Un offset pour déplacer le pointeur lu à wayrelatif.way
L'une des énumérations d' ios_base::seekdir .
Valeur de retour
Le flux de données (*this).
Notes
La première fonction membre exécute un accès absolu, la deuxième fonction membre exécute un accès relatif.
[!REMARQUE]
N'utilisez pas la deuxième fonction membre avec les fichiers texte, parce que C++ standard ne prend pas en charge les accès relatifs dans les fichiers texte.
Si échec a la valeur false, le premier appel d'une fonction membre newpos = rdbuf - > pubseekpos(pos), pour un objet temporaire newposde pos_type .Si fail a la valeur false, la deuxième appels de fonction newpos = rdbuf - > pubseekoff(off, way).Dans les deux cas, sioff_type(==) denewpos (off_type) (- 1) (de échec de positionnement d'exécution), les appels de fonction istr.setstate(failbit).Les deux fonctions *thisde retour.
Si échec est true, les fonctions membres ne font rien.
Exemple
// basic_istream_seekg.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>
int main ( )
{
using namespace std;
ifstream file;
char c, c1;
file.open( "basic_istream_seekg.txt" );
file.seekg(2); // seek to position 2
file >> c;
cout << c << endl;
}
Entrée : basic_istream_seekg.txt
0123456789
Sortie
2
Configuration requise
en-tête : <istream>
l'espace de noms : DST