C언어 file access 함수 정리
- 최초 등록일
- 2010.05.30
- 최종 저작일
- 2006.03
- 8페이지/ 한컴오피스
- 가격 1,000원
소개글
C언어에서 file을 access 하는 함수 17개에 대한 정리.
목차
1. fp = fopen(s, mode);
2. c = getc(fp);
3. putc(c, fp);
4. ungetc(c, fp);
5. scanf(fmt, a1, ...);
6. fscanf(fp, ...);
7. printf(fmt, a1, ...);
8. fprintf(fp, ...);
9. fgets(s, n, fp);
<중 략>
본문내용
1. fp = fopen(s, mode);
이 코드를 실행하기 전에 FILE * fp; 라는 코드가 위에 있어야 한다. FILE * fp 는 physical file을 logical file로 사용할 수 있는 파일 포인터를 선언한 것이다.
s 는 physical file name 이고 mode 에는 다음과 같은 것들이 있다.
r - 읽기 전용, 파일 포인터는 파일의 맨 처음을 가리키고, 파일이 없으면 NULL 을 리턴
r+ - 읽기 쓰기 가능, 파일 포인터는 파일의 맨 처음 가리키고, 파일 없으면 NULL 리턴
w - 쓰기 전용, 파일 포인터는 파일의 맨 처음 가리키고, 파일의 기존 내용을 지우며,
파일이 없을 시에는 파일을 새로 만든다.
w+ - 읽기 쓰기 가능, 파일 포인터는 파일의 맨 처음 가리키고, 파일의 기존 내용을
지우고, 파일이 없을 경우 새로 만든다.
a - 쓰기 전용, 파일 포인터는 파일의 맨 끝을 가리키고, 파일이 없을 경우 새로 만든다.
a+ - 읽기 쓰기 가능, 파일 포인터는 파일의 맨 끝을 가리키고, 파일이 없을 경우 새로
만든다.
b - binary 모드로 연다. 혼자 쓰일 수 있지만 위의 모드와 같이 쓰인다.
사용 예) FILE * fp;
fp = fopen("data.txt", "r");//data.txt라는 파일을 읽기 모드로 연다.
2. c = getc(fp);
getc 함수는 파일 포인터 fp 가 가리키는 파일에서 한 문자를 읽어 온다. 읽어올 때는 fp가 가리키는 파일 스트림에서 차례대로 읽어 온다. 그래서 또 getc 함수를 사용했을 경우 먼저 번 읽은 문자의 다음 문자를 읽게 된다.
사용 예)
11. fflush(fp);
보통 파일에 쓸 때에는 출력 버퍼에 임시적으로 데이터를 저장 했다가 버퍼가 꽉 차면 데이터를 파일 스트림에서 내 보낸다. fflush는 버퍼가 다 채워질 때 까지 기다리지 않고 강제적으로 파일 스트림에서 데이터를 내 보내 파일에 저장할 수 있게 한다.
fp 대신에 표준 입/출력 스트림(stdin/stdout)을 써도 된다.
사용 예)
fp = fopen("data.txt", "w"); //파일을 쓰기 모드로 연다.
fputs("Hello Wolrd!", fp); //파일 스트림으로 출력
fflush(fp); //버퍼가 다 차기전에 파일 스트림으로 보낸다.
fclose(fp); //파일을 닫는다.
12. fclose(fp);
파일을 여는 함수 fopen을 사용한 후에는 fclose를 사용해서 파일 작업을 끝내야 한다. fclose(fp)는 fp 가 가리키는 파일 스트림을 닫는다.
사용 예)
fp = fopen("data.txt", "w"); //파일을 쓰기 모드로 연다.
//파일과 관련된 작업을 한 후에
//마지막으로
참고 자료
없음