basic_istream::seekg
Déplace la position de lecture dans un flux de données.
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 de lecture.off
Un décalage pour déplacer le pointeur de lecture relativement à way.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 effectue une recherche absolue, la deuxième fonction membre effectue une recherche relative.
Notes
N'utilisez pas la deuxième fonction membre avec des fichiers texte, parce que C++ standard ne prend pas en charge les recherches relatives dans des fichiers texte.
Si Échec est faux, la première fonction membre appelle newpos = rdbuf -> pubseekpos(pos), pour certains objets temporaires newposde pos_type . Si Échec est faux, le deuxième fonction appelle newpos = rdbuf -> pubseekoff(off, way). Dans l'un et l'autre cas, sioff_type(==) denewpos (off_type) à (- 1) (l'opération de positionnement), la fonction appelle istr.setstate(failbit). Les deux fonctions retournent *this.
Si Échec est vrai, 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>
Espace de noms : std