Inhaltsverzeichnis

fseek()

#include <cstdio>

int fseek (FILE *datei, long int offset, int bezug) 

"Spult" datei um den offset vom bezug-Punkt aus vor bzw. zurück.

Parameter

datei Zeiger auf einen mit fopen() geöffneten Datenstrom
offset Versatz zum Bezugspunkt (zum Ende hin positiv, zum Anfang negativ)
bezug Bezugspunkt

Der Bezugspunkt der Verschiebung ist

SEEK_SET Dateianfang
SEEK_CUR aktuelle Position
SEEK_END Dateiende

In Textdateien sollten sich Positionsangaben auf den Dateianfang beziehen.

Ergebnis

Rückgabewert: 0 bei Erfolg.

Siehe auch

<fstream>, fsetpos(), ftell(), rewind().

Beispiel

fseek.cpp
#include <cstdio>
#include <iostream>
 
int main()
{
  using namespace std;
  FILE* datei;
 
  if ((datei = fopen("test.txt", "r")) == NULL)
  {
    cerr << "Fehler beim Öffnen der Datei\n";
    return 1;
  }
  fseek(datei, 0, SEEK_END);
 
  cout << "Dateigroesse: " << ftell(datei) << " Byte.\n";
  fclose(datei);
  return 0;
}