Condividi tramite


basic_istream::seekg

Consente di spostare la posizione letti in un flusso.

basic_istream<Elem, Tr>& seekg(
    pos_type pos
);
basic_istream<Elem, Tr>& seekg(
    off_type off,
    ios_base::seekdir way
);

Parametri

  • pos
    La absolute position in cui spostare il puntatore lettura.

  • off
    Un offset per spostare il puntatore in lettura a wayrelativo.

  • way
    Una delle enumerazioni ios_base::seekdir.

Valore restituito

Il flusso***this**().

Note

La prima funzione membro esegue una ricerca assoluta, la seconda funzione membro esegue una ricerca relativa.

[!NOTA]

Non utilizzare la seconda funzione membro con file di testo, poiché lo standard C++ non supporta le ricerche di in file di testo.

Se superato è false, le prime chiamate di funzione membro newpos = rdbuf - > pubseekpos(pos), per un oggetto temporaneo newposdi pos_type .Se fail è false, il secondo chiamate di funzione newpos = rdbuf - > pubseekoff(off, way).In entrambi i casi, seoff_type(==) dinewpos (off_type) (- 1) (l'esito negativo di posizionamento delle operazioni), le chiamate di funzione istr.setstate(failbit).Entrambe le funzioni *thisrestituita.

Se superato è true, le funzioni membro non eseguono alcuna operazione.

Esempio

// 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;
}

Input: basic_istream_seekg.txt

0123456789

Output

2

Requisiti

intestazione: <istream>

Spazio dei nomi: deviazione standard

Vedere anche

Riferimenti

basic_istream Class

programmazione di iostream

convenzioni di iostream