FILE 구조체를 이용해 파일을 읽어보자


FILE 구조체를 이용해 파일 생성 읽기, 쓰기가 가능하다.

파일을 생성, 읽기, 닫기 3가지를 배워보겠다.


파일을 일단 읽어보자


[예제]

#include <stdio.h>


int main(int argc, char *argv[]) 

{

char file_buffer[30] = {0,};

FILE * file = fopen("Test.txt", "rt");

fgets(file_buffer,sizeof(file_buffer), file);

printf("data[%s]",file_buffer);

fclose(file);

return 0;

}



 data[test test]

 계속하려면 아무 키나 누르십시오...



프로그램 실행 파일이  있는 곳에 Test.txt 파일이 있어야 실행이 된다.

Test.txt파일을 메모장으로 열어 test test라는 문구를 입력하자.

다른 내용을 넣어도 되지만 file_buffer 사이즈가 넘지 않도록 한다.

넘으면 파일 내용이 전부 출력 되지 않는다.


fopen 사용법은 아래와 같다.

#include<stdio.h>

FILE * fopen( const char * filename, const char * mode )


첫번째 인자(filename)는 경로를 포함한 생성할 파일 명이 넣는다. 

경로가 없으면 프로그램이 실행 된 곳에 파일이 생성 된다.

두번째 인자(mode)는 파일 생성 타입을 설정 한다.

읽기(r), 쓰기(w), 추가(a), t(텍스트모드), b(2진모드)


fgets 사용법은 아래와 같다.

#include<stdio.h>

int fgets(char * s, int size, FILE * stream)


파일에서 데이터를 읽는 함수이다.

첫 번째 인자는 파일 내용을 저장할 버퍼를 넣는다.

두 번째 인자는 읽어 들일 사이지를 지정 한다. 보통 버퍼 사이즈를 입력한다.

세 번째 인자는 읽어들일  FILE 구조체를 넣는다.


fclose 사용법은 아래와 같다.

#include<stdio.h>

int fclose(FILE * stream)


파일을 종결할 때 사용하는 함수이다.

더이상 파일 접근을 할 필요가 없으면 반드시 종결 시켜준다.




반응형

+ Recent posts