以下是对文本文件操作的例子:
int fseek(FILE* stream, long offset, int origin),
参数:
stream: Pointer to FILE structure.
offset: Number of bytes from origin.
origin: Initial position: SEEK_CUR: Current position of file pointer;
SEEK_END: End of file;
SEEK_SET: Beginning of file.
例:
文本文件:Wavefront OBJ file
程序:
iChar = fgetc(pFile); // iChar = 87,即'W'
iChar = fgetc(pFile); // iChar = 97,即'a'
fseek(pFile , 1 , SEEK_CUR);
iChar = fgetc(pFile) ; // iChar = 101,即'e'
fseek(pFile , 3 , SEEK_CUR) ;
iChar = fgetc(pFile); // iChar = 110,即'n'
据观察,在二进制文件中也成立。
另外,进一步对fseek()的理解:
(1)fseek(pFile , |i| , SEEK_SET|SEEK_CUR|SEEK_END); 表示指针向前移动i个字节。
(1)fseek(pFile , -|i| , SEEK_SET|SEEK_CUR|SEEK_END); 表示指针向后移动i个字节。