#include <stdio.h>
#include <string.h>
int main()
{
FILE *Test=0,*Test2 = 0,*Test3 = 0;
char buffer[1000] = {0,};
char * freadData = 0;
int count = 0;
char str[128]="String";
int i = 1234;
double d = 3.1416;
//Test = fopen("book.txt","r+t");
Test2 = fopen("book.txt","r+t");
Test3 = fopen("book4.txt","w+t");
fseek(Test2,5,SEEK_CUR);
i = fread(buffer,1,300,Test2);
fwrite(buffer , 5, i,Test3);
//fprintf(Test2,"%d %f %s",i,d,str);
return 0;
}
이 소스를 분석하기 전에
fseek 에 대해 설명 하겠습니다. fseek은 파일 포인터인 FP를 이동하는 함수이다 .
파일은 읽기 위해서는 FP가 가르키는 곳에서 부터 읽어야 되기 때문에
fseek 함수를 사용하면 내가 원하는 곳부터 파일을 읽을 수 있다 .
자 그럼 우선 fseek 함수 매개 변수 부터 정리 해보겠습니다.
fseek 함수의 매개변수는 파일에 대한 포인터 , 몇 바이트를 이동해서 읽을 것인지, 모드
인데 여기서 모드는 SEEK_CUR , SEEK_SET , SEEK_END 가 존재 한다.
SEEK_CUR 은 현재 위치 , SEEK_CUR 는 선두를 기준으로 뒤로 이동 , SEEK_END는 끝을 기준으로
앞으로 이동한다.
그럼 소스를 분석해 보겠다 .
이 소스는 FP를 5바이트를 증가 해 놓고 그 위치에서부터 뒤로 파일을 읽는 소스이다 ^^
'Soft Ware > C 언어!!' 카테고리의 다른 글
구조체 를 파일에 입력 및 출력 하기 (0) | 2012.01.31 |
---|---|
ftell 함수 와 rewind 함수 (0) | 2012.01.30 |
fprintf 와 fscanf 사용하기 !!! (0) | 2012.01.30 |
fread 와 fwrite 이용 하기 및 fgets 와 fputs 와의 차이점 (0) | 2012.01.30 |
fgets / fputs 사용하기 !!! (0) | 2012.01.30 |