설명

파일의 읽기/쓰기 위치를 파일의 처음 위치로 초기화합니다.

파일의 위치는 기준 옵션에 따라 앞으로 또는 뒤로 읽기/쓰기 위치로 건너 띕니다.

whence설명

SEEK_SET

파일의 시작
SEEK_CUR현재 읽기/쓰기 포인터 위치
SEEK_END파일의 끝

건너 띈다는 말씀은 인수로 받은 숫자의 위치로 이동한다는 뜻이 아니라 건너 띄듯이 count 한다는 뜻입니다. 아래의 그림을 참고하여 주십시오.

헤더stdio.h
형태int fseek( FILE *stream, long offset, int whence);
인수FILE *stream대상 파일 스트림
long offset이동할 바이트 수
int whence시작 시점
반환int0을 반환, 오류가 발생하면 -1을 반환
예제
#include <stdio.h>

int main( void)
{
   FILE *fp;
   char  str[1024];
   int   ndx;

   fp = fopen( "./test.txt", "r");

   printf( "%sn", fgets( str, 1024, fp));

   fseek( fp, 10, SEEK_SET);              // 파일의 시작에서 10번을 건너 띈다.
   printf( "%sn", fgets( str, 1024, fp));

   fseek( fp,  5, SEEK_SET);              // 파일의 시작에서 5번을 건너 띈다.
   fseek( fp,  5, SEEK_CUR);              // 현재 위치에서 다시 5번을 건너 띈다.
   printf( "%sn", fgets( str, 1024, fp));

   fseek( fp,  -5, SEEK_END);             // 파일의 시작에서 5번을 건너 띈다.
   printf( "%sn", fgets( str, 1024, fp));

   fclose( fp);

   return 0;
}

test.txt 파일에 16진수 문자, 0부터 f 까지 입력되어 있을 때 실행 결과입니다.

0123456789abcdef

]$ ./a.out 0123456789abcdef abcdef abcdef bcdef ]$



+ Recent posts