| |
22.16.1.fseek |
|
Item | Value | Header file | stdio.h | Declaration | int fseek(FILE *stream, long int offset, int origin); | Function | moves the file position pointer. | Return | zero on success or nonzero on failure. |
|
'origin' must be one of: |
Name | Meaning | SEEK_SET | Seek from start of file | SEEK_CUR | Seek from current location | SEEK_END | Seek from end of file |
|
For a text file, origin must be SEEK_SET and offset must be a value obtained by calling ftell(), or zero.
(C: The Complete Reference, Fourth Edition
by Herbert Schildt
McGraw-Hill/Osborne 2000 (805 pages)
ISBN:0072121246) |
#include <stdio.h>
#include <stdlib.h>
struct fullname {
char firstName[40];
char lastName[10];
} info;
int main(void){
FILE *fp;
if((fp=fopen("test", "rb")) == NULL) {
printf("Cannot open file.\n");
exit(1);
}
int client_num = 10;
/* find the proper structure */
fseek(fp, client_num*sizeof(struct fullname), SEEK_SET);
/* read the data into memory */
fread(&info, sizeof(struct fullname), 1, fp);
fclose(fp);
}
|
|
|