Freigeben über


basic_filebuf::seekpos

Versucht, aktuellen Positionen für die kontrollierten Streams zu ändern.

virtual pos_type seekpos( 
   pos_type _Sp, 
   ios_base::openmode _Which = ios_base::in | ios_base::out 
);

Parameter

  • _Sp
    Die Position, zu suchen.

  • _Which
    Gibt dem Modus für die Zeigerposition an. Der Standardwert ist, Ihnen ermöglichen, das Lesen und die Schreibpositionen zu ändern.

Rückgabewert

Wenn der Dateizeiger fp ein NULL-Zeiger ist, schlägt die Funktion. Andernfalls ermittelt es, die Streamposition ändern, indem er fsetpos(fp, &fposn) fposn aufruft, wo das fpos_t-Objekt, das im pos gespeichert wird. Wenn diese Funktion entspricht, gibt die Funktion pos zurück. Andernfalls wird eine ungültige Streamposition zurück. Um festzustellen wenn die Streamposition ungültig, vergleichen Sie den Rückgabewert mit pos_type(off_type(-1)).

Hinweise

Die geschützte Bemühungen der virtuellen Memberfunktion, aktuellen Positionen für die kontrollierten Streams zu ändern. Für ein Objekt der Klasse basic_filebuf<Elem, Tr>, kann eine Streamposition über ein Objekt vom Typ fpos_t dargestellt werden, der einen Offset und alle Zustandsinformationen speichert, die erforderlich sind, um zahlreiche Stream zu analysieren. Offset null legt das erste Element des Streams fest. (Ein Objekt vom Typ pos_type speichern mindestens ein fpos_t-Objekt.)

Eine Datei, die für das Lesen und Schreiben, werden geöffnet ist, die Eingabe und die Ausgabestreams im Tandem positioniert. Um zwischen dem Einfügen und dem Extrahieren wechseln, müssen Sie entweder pubseekoff oder pubseekpos aufrufen. Aufrufe zu pubseekoff (und somit zu seekoff) besitzen verschiedene Einschränkungen für einen Textstream, Binärstreams breite und Streams.

Bei einem Breitzeichen Stream wenn Einfügungen aufgetreten sind, seit der Stream geöffnet war, oder seit dem letzten Aufruf von streampos, die durch Überlauf. Es fügt auch jede Sequenz ein, die erforderlich ist, um den ursprünglichen Konvertierungszustand wiederherzustellen, indem das Dateikonvertierungsfacet fac verwendet, um .facunshift bei Bedarf aufzurufen. Jedes Element byte des Typs char erstellt daher wird dem zugeordneten Stream geschrieben, den der Dateizeiger fp als ob durch aufeinander folgende Aufrufe des Formulars fputc(byte, fp) festgelegt wird. Wenn der Aufruf von fac.unshift oder alle fehlschlägt, die Funktion nicht folgt schreiben.

Anforderungen

Header: <fstream>

Namespace: std

Siehe auch

Referenz

basic_filebuf-Klasse

iostream-Programmierung

iostreams-Konventionen