1.파일을 열기 위해서는 가장 먼저 파일 포인터변수를 선언해야된다.
FILE *변수명;//변수명==파일포인터
2.파일 포인터를 선언했으면 이제 파일을 열기 위한 함수를 사용해야된다.
파일포인터=fopen("파일이름.확장자","열기모드");
열기모드종류
r : 읽기 전용
w:파일이 없다면 새로 생성하고 파일이 있으면 덮어쓴다
a:파일이 없다면 새로 생성하고 파일이 있으면 기존파일에 이어쓴다.
w:파일이 없다면 새로 생성하고 파일이 있으면 덮어쓴다
a:파일이 없다면 새로 생성하고 파일이 있으면 기존파일에 이어쓴다.
3.파일을 읽고 쓰기.
4.파일과 관련된 모든 작업이 끝나면 꼭 파일을 정상적으로 닫아줘야 한다.
fclose(파일 포인터);
이젠 과정 3 파일 읽고 쓰기에 관해 알아볼 것이다.
fgets() : 파일로부터 값을 입력 받을 떄 사용.
fgets(문자배열,읽어올 최대 문자수,파일포인터);
예를 들어 c드라이브에 있는 data.txt 파일에 first란 글자를 읽어오고 싶으면 다음과 같다.
ex)
----------------------------------------------
FILE *fp;
char s[20];//임시로 20개 정해준 값
fp=fopen("c:\\data.txt","r");
fgets(s,19,fp);
fclose(fp);
----------------------------------------------
fscanf(): 서식을 지정하여 파일 읽음.
fscanf(파일 포인터,"서식",입력할 매개변수들);
예를들어 c드라이브에 있는 data.txt 파일에 124/23/123 숫자들을 합하는 프로그램을 작성해보면 다음과 같다
ex)
----------------------------------------------
FILE *fp;
int i,hap=0;
int a; //변수로 지정
fp=fopen("c:\\data.txt","r");
for(i=0;i<3;i++)
{
fscanf(fp,"%d",&a)
4.파일과 관련된 모든 작업이 끝나면 꼭 파일을 정상적으로 닫아줘야 한다.
fclose(파일 포인터);
이젠 과정 3 파일 읽고 쓰기에 관해 알아볼 것이다.
fgets() : 파일로부터 값을 입력 받을 떄 사용.
fgets(문자배열,읽어올 최대 문자수,파일포인터);
예를 들어 c드라이브에 있는 data.txt 파일에 first란 글자를 읽어오고 싶으면 다음과 같다.
ex)
----------------------------------------------
FILE *fp;
char s[20];//임시로 20개 정해준 값
fp=fopen("c:\\data.txt","r");
fgets(s,19,fp);
fclose(fp);
----------------------------------------------
fscanf(): 서식을 지정하여 파일 읽음.
fscanf(파일 포인터,"서식",입력할 매개변수들);
예를들어 c드라이브에 있는 data.txt 파일에 124/23/123 숫자들을 합하는 프로그램을 작성해보면 다음과 같다
ex)
----------------------------------------------
FILE *fp;
int i,hap=0;
int a; //변수로 지정
fp=fopen("c:\\data.txt","r");
for(i=0;i<3;i++)
{
fscanf(fp,"%d",&a)
hap=hap+a;
}
printf("합계 ==>%d\n",hap);
fclose(fp);
----------------------------------------------
fputs():파일에 문자열 출력
fputs(입력할 데이터,파일 포인터);
화면에 출력하는 대신 파일에 내용을 쓰는 함수.
예를들어 c드라이브에 있는 data.txt 파일에 문자열을 입력하는 경우는 다음과 같다.
ex)
----------------------------------------------
FILE *fp;
char s[20];
fp=fopen("c:\\data.txt","a");
printf("문자열 입력:");
gets(s);
fputs(s,fp);
fclose(fp);
----------------------------------------------
fprintf():수식/서식을 지정하여 파일 출력
파일에 숫자를 출력하는 경우에는 서식을 지정할 수 있는 fprintf()를 사용한다.
fprintf(파일포인터,"서식",출력할 매개변수);
ex)
----------------------------------------------
FILE *fp;
int i;
fp=fopen("c:\\data.txt","a");
printf("숫자 입력:");
scanf("%d",&i);
fprintf(fp,"%d",i);
fclose(fp);
----------------------------------------------
}
printf("합계 ==>%d\n",hap);
fclose(fp);
----------------------------------------------
fputs():파일에 문자열 출력
fputs(입력할 데이터,파일 포인터);
화면에 출력하는 대신 파일에 내용을 쓰는 함수.
예를들어 c드라이브에 있는 data.txt 파일에 문자열을 입력하는 경우는 다음과 같다.
ex)
----------------------------------------------
FILE *fp;
char s[20];
fp=fopen("c:\\data.txt","a");
printf("문자열 입력:");
gets(s);
fputs(s,fp);
fclose(fp);
----------------------------------------------
fprintf():수식/서식을 지정하여 파일 출력
파일에 숫자를 출력하는 경우에는 서식을 지정할 수 있는 fprintf()를 사용한다.
fprintf(파일포인터,"서식",출력할 매개변수);
ex)
----------------------------------------------
FILE *fp;
int i;
fp=fopen("c:\\data.txt","a");
printf("숫자 입력:");
scanf("%d",&i);
fprintf(fp,"%d",i);
fclose(fp);
----------------------------------------------
'프로그래밍 > c언어' 카테고리의 다른 글
typedef (0) | 2011.02.02 |
---|---|
fflush(stdin); (0) | 2011.01.08 |
도서관리프로그램 (0) | 2011.01.08 |
BMI비만도측정 프로그램 (0) | 2011.01.07 |
c언어 학교선배 시험 (0) | 2011.01.07 |