【기 능】 파일에서 한줄의 문자열을 읽어낸다.
【소 속】 stdio.h
#include <stdio.h>
【서 식】
char *fgets(char *pstrBuff, int iLen, FILE *fp);
【설 명】
fp가 가리키는 파일에서 iLen길이의 문자열을 읽어내서 pstrBuff에 넣어준다.
iLen는 읽어내는 최대 사이즈이며, 도중에 줄바꿈 코드가 있으면 읽기가 중단된다.
iLen에는 '\0'가 포함되므로 실제로는 iSize - 1이 된다.
대상 파일은 읽기모드로 오픈해야 한다.
【인 수】
char *pstrBuff : 문자열 보존용 버퍼
int iLen : 읽어내기 최대 사이즈(한줄)
FILE *fp : file pointer. fopen함수로 오픈한 파일정보를 가지고 있는 핸들러
【리턴 값】
읽기 성공시 : 읽어낸 문자
읽기 실패시 또는 파일종료시 : NULL
【사용 예】
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE *fp;
char strBuff[100];
char *cRetn;
int iRetn;
/* 읽기 모드로 파일을 오픈한다 */
if( (fp = fopen("test_data.txt", "r") ) == NULL ) {
printf("파일 오픈 에러\n");
exit(EXIT_FAILURE);
}
else{
printf("파일 오픈 성공\n");
}
/* 오픈한 파일에서 문자열을 읽어서 화면에 출력한다 */
cRetn = fgets(strBuff, sizeof(strBuff), fp);
printf("%s", strBuff);
cRetn = fgets(strBuff, sizeof(strBuff), fp);
printf("%s", cRetn);
/* 오픈한 파일을 닫는다(close) */
iRetn = fclose(fp);
if(iRetn != 0){
printf("파일 클로즈 에러\n");
}
else{
printf("파일 클로즈 성공\n");
}
return 0;
}
【test_data.txt】
VWXYZ
12345
【결 과】
파일 오픈 성공
VWXYZ
12345
파일 클로즈 성공