fopen(파일 열기) fclose(파일 닫기) fprintf fputs fpuc(문자열 쓰기) fscanf fgets fgetc(문자열 읽기) C 함수 레퍼런스

|
                        

fopen


함수원형 FILE *fopen(const char *filename,const char *mode)

헤더파일 stdio.h

파일열기에 실패한 경우 NULL 리턴

filename : 열고자 하는 파일명, 실행 파일과 같은 폴더에 있는 파일은 파일 이름만 쓰고 다른 폴더에 있는 경우 "C:\\폴더이름\\파일명.txt"

mode : 파일을 어떤 용도로 열고자 하는지 나타내는 모드

r 지정한 파일을 읽기 전용으로 열기, 지정한 피일이 없으면 실패

w 지정한 파일을 생성하고 쓰기 전용으로 열기, 지정한 파일이 이미 있으면 삭제한 후 새로 생성

a 지정한 파일이 있으면 내용을 그대로 유지하면서 맨 끝에 내용을 추가할 수 있도록 쓰기 전용, 지정한 파일이 없으면 새로 생성

r+ 지정한 파일을 수정하기 위해 읽기/쓰기용으로 열기, 지정한 파일이 없으면 실패

w+ 지정한 파일을 생성하고 읽기/쓰기용으로 열기, 지정한 파일이 이미 있으면 삭제하고 새로 생성

a+ 지정한 파일이 있으면 내용을 유지하고 맨 끝에 내용을 추가할 수 있도록 읽기/쓰기용, 지정한 파일이 없으면 새로 생성


t 텍스트 모드

b 바이너리 모드


int fclose(FILE *fp) 지정된 파일 닫기


int fprintf(FILE *fp, const char *format [, argument ] ···) 포맷에 맞춰 문자열을 파일에 쓰기

char *fputs(const char *string, FILE *fp) 문자열을 파일에 쓰기

int fputc(int c, FILE *fp) 문자를 파일에 쓰기


int fscanf(FILE *fp, const char *format [, argument ] ···) 포맷에 맞춰 문자열을 파일에서 읽기

char *fgets(char *string, int n, FILE *fp) 문자열을 파일에서 읽기

int fgetc(FILE *fp) 문자를 파일에서 읽기



#include <stdio.h>


void main()

{

FILE *fp;

int a=99999;

int temp[2];

char string[10];


if((fp=fopen("test.txt","wt"))==NULL) //쓰기 텍스트 모드

{

printf("파일 열기 실패");

}



//파일 쓰기

fputc('c',fp);

fputs("\nstring\n",fp);

fprintf(fp,"%d %d\n",a, a+1);


fclose(fp);//파일 닫기


if((fp=fopen("test.txt","rt"))==NULL) //읽기 텍스트 모드

{

printf("파일 열기 실패");

}

//파일 읽기

fscanf(fp,"%c",&string[0]);

printf("%c\n",string[0]);

fscanf(fp,"%s",string);

printf("%s\n",string);

fscanf(fp,"%d %d",&temp[0],&temp[1]);

printf("%d %d\n",temp[0],temp[1]);


fclose(fp);//파일 닫기


}

And