basic_istream::seekg
Verschiebt die Leseposition in einem Stream.
basic_istream<Elem, Tr>& seekg(
pos_type pos
);
basic_istream<Elem, Tr>& seekg(
off_type off,
ios_base::seekdir way
);
Parameter
pos
In der absolute Position, den Lesezeiger zu verschieben.off
Ein Offset, um den Lesezeigers relativ zu way zu verschieben.way
Eine der ios_base::seekdir-Enumerationen.
Rückgabewert
Der Stream (*this).
Hinweise
Die erste Memberfunktion führt eine absolute Suche, die zweite Memberfunktion führt eine relative Suche aus.
Hinweis |
---|
Verwenden Sie nicht die zweite Memberfunktion mit Textdateien, da Standard-C++ keine relativen Suchen in Textdateien unterstützt. |
Wenn Fail falsch ist, die ersten Memberfunktionsaufrufe newpos = rdbuf - > pubseekpos(pos), für einige temporäres Objekt newpospos_type .Wenn fail falsch, die zweiten Funktionsaufrufe newpos = rdbuf - > pubseekoff(off, way).In jedem Fall (off_type)newpos == (off_type) (- 1) (der Positionierungseigenschaft Vorgang schlägt) aus, die istr-Funktionsaufrufe.setstate(failbit).Beide Funktionen geben *this. zurück.
Wenn Fail zutrifft, haben die Memberfunktionen nichts.
Beispiel
// 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;
}
Eingabe: basic_istream_seekg.txt
0123456789
Output
2
Anforderungen
Header: <istream>
Namespace: std