Use fseek function to move the file pointer
Syntax
C fseek function has the following syntax.
int fseek(FILE *stream, long int offset, int origin);
Header
C fseek function is
from header file stdio.h
.
Description
C fseek function moves the file position pointer.
C fseek function returns 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 |
Example
Move the file pointer using C fseek function
#include <stdio.h>
#include <stdlib.h>
/*from w w w. ja v a 2s . c o m*/
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);
}