setpos | <STDIO.H> |
Składnia: int fsetpos(FILE *stream, const fpos_t *pos);
gdzie: stream - wskaźnik do strumienia, w którym zmieniamy pozycje wskaźnika. pos - pozycja wskaźnika zapamiętana przez ostanie wywołanie fgetpos. Opis Zwracana wartość:
Przykład: #include <stdio.h> void wyswietl_wskaznik(FILE *stream) { fpos_t pos; fgetpos(stream, &pos); printf("Aktualna pozycja w pliku: %ld\n", pos); } int main(void) { FILE *stream; fpos_t pos; stream = fopen("TEST.$$$", "w+"); fgetpos(stream, &pos); // zapamiętanie wskaźnika fprintf(stream, "To jest test..."); wyswietl_wskaznik(stream); // wyświetlenie wskaźnika if (fsetpos(stream, &pos) == 0) // przywrócenie wskaźnika wyswietl_wskaznik(stream); else { fprintf(stderr, "Błąd przywracania wskaźnika.\n"); exit(1); } fclose(stream); return 0; } |
fseek | <STDIO.H> |
Składnia: int fseek(FILE *stream, long ile, int skąd);
gdzie: stream - wskaźnik do strumienia, w którym zmieniamy pozycje wskaźnika. ile - różnica między skąd i nową pozycją wskaźnika. Wartość dodatnia przesuwa wskaźnik w stronę końca pliku, a ujemna - początku. skąd - miejsce w pliku, od którego ma byc liczona wartość ile:
Opis Zwracana wartość:
Przykład: #include <stdio.h> int main(void) { FILE *stream; long curpos; stream = fopen("TEST.$$$", "w+"); fprintf(stream, "To jest test..."); curpos = ftell(stream); fseek(stream, 0L, 2); // ustawia wskaźnik na końcu pliku printf("Wielkość pliku: %ld bajtów\n", ftell(stream)); fseek(stream, curpos, 0); // przywraca poprzednią pozycję wskaźnika fclose(stream); return 0; } |
rewind | <STDIO.H> |
Składnia: void rewind(FILE *stream);
gdzie: stream - wskaźnik do strumienia, w którym zmieniamy pozycje na początek pliku. Opis Zwracana wartość: brak Przykład: #include <stdio.h> int main(void) { FILE *stream; char znak; stream = fopen("TEST.$$$","w+"); fprintf(stream, "abcdefghijklmnopqrstuvwxyz"); rewind(stream); fscanf(stream, "%c", &znak); printf("Pierwszy znak w pliku: %c\n", znak); fclose(stream); return 0; } |