C-Bibliotheksfunktionen -fseek()
C-Standardbibliothek - <stdio.h>
Beschreibung
C-Bibliotheksfunktionenint fseek(FILE *stream, long int offset, int whence)Setzt den StreamstreamDie Dateiposition befindet sich beim angegebenen offset.offset, der Parameter offset ist relativ zu dem angegebenenwhenceDie Anzahl der Bytes für die Positionssuche.
Deklaration
Nachfolgend die Deklaration der Funktion fseek().
int fseek(FILE *stream, long int offset, int whence)
Parameter
- stream-- Dies ist ein Zeiger auf das FILE-Objekt, das den Stream identifiziert.
- offset-- Dies ist der Offset in Bytes, relativ zu whence.
- whence-- Dies ist die Position, die angibt, von wo der Offset addiert wird. Sie wird im Allgemeinen als eine der folgenden Konstanten angegeben:
| Konstanten | Beschreibung |
|---|---|
| SEEK_SET | Anfang der Datei |
| SEEK_CUR | Die aktuelle Position des Dateizeigers. |
| SEEK_END | Ende der Datei |
Rückgabewert
Bei Erfolg gibt diese Funktion null zurück; andernfalls gibt sie einen Wert ungleich null zurück.
Beispiel
Das folgende Beispiel demonstriert die Verwendung der Funktion fseek().
#include <stdio.h>
int main ()
{
FILE *fp;
fp = fopen("file.txt","w+");
fputs("This is example.com", fp);
fseek( fp, 7, SEEK_SET );
fputs(" C Programming Langauge", fp);
fclose(fp);
return(0);
}
Lassen Sie uns das obige Programm kompilieren und ausführen, das eine Datei erstellt.file.txt, ihr Inhalt ist wie folgt. Zunächst erstellt das Programm die Datei und schreibtThis is example.com, aber danach setzten wir den Schreibzeiger auf die siebte Position und verwendeten die puts()-Anweisung, um die Datei neu zu schreiben, wie folgt:
This is C Programming Langauge
Nun verwenden wir das folgende Programm, um den Inhalt der obigen Datei anzuzeigen:
#include <stdio.h>
int main ()
{
FILE *fp;
int c;
fp = fopen("file.txt","r");
while(1)
{
c = fgetc(fp);
if( feof(fp) )
{
break ;
}
printf("%c", c);
}
fclose(fp);
return(0);
}
Weitere Erweiterungen