logo

예제가 포함된 C fopen() 함수

그만큼 fopen() 메서드 C에서 다양한 모드와 함께 읽기, 쓰기 등의 다양한 작업을 수행하기 위해 파일을 여는 데 사용되는 라이브러리 함수입니다. 파일이 존재하면 fopen() 함수는 특정 파일을 열고 그렇지 않으면 새 파일이 생성됩니다.

통사론

C fopen()의 구문은 다음과 같습니다.



블록 자바를 잡아보세요
FILE * fopen (const char * file_name , const char * mode_of_operation );>

매개변수

이 메서드는 문자 포인터 유형의 두 가지 매개 변수를 허용합니다.

  • 파일 이름: 이는 C 문자열 유형이며 열어야 하는 파일의 이름을 허용합니다.
  • 동작 모드: 이는 C 문자열 유형이기도 하며 파일 액세스 모드를 나타냅니다.

아래 표에는 C의 유효한 mode_of_Operation 값과 그 의미가 나열되어 있습니다.

오프닝 모드



설명

아르 자형

파일을 검색합니다. 읽기 전용으로 파일을 엽니다. . 파일이 성공적으로 열리면 fopen()은 파일을 메모리에 로드하고 파일의 첫 번째 문자를 가리키는 포인터를 설정합니다. 파일을 열 수 없으면 fopen()은 NULL을 반환합니다.



~ 안에

파일을 검색합니다. 파일이 이미 존재하는 경우 해당 내용을 덮어씁니다. 파일이 없으면 새 파일이 생성됩니다. 파일을 열 수 없으면 NULL을 반환합니다. 쓰기 전용(읽기 없음)용으로 새 파일을 생성합니다.

파일을 검색합니다. 파일이 성공적으로 열리면 fopen()은 파일을 메모리에 로드하고 파일의 마지막 문자를 가리키는 포인터를 설정합니다. 파일이 없으면 새 파일이 생성됩니다. 파일을 열 수 없으면 NULL을 반환합니다. 파일은 추가(파일 끝에 쓰기)용으로만 열립니다.

r+

파일을 검색합니다. 읽기와 쓰기 모두를 위해 파일을 엽니다. . 성공적으로 열리면 fopen()은 이를 메모리에 로드하고 그 안의 첫 번째 문자를 가리키는 포인터를 설정합니다. 파일을 열 수 없으면 NULL을 반환합니다.

w+

파일을 검색합니다. 파일이 있으면 해당 내용을 덮어씁니다. 파일이 없으면 새 파일이 생성됩니다. 파일을 열 수 없으면 NULL을 반환합니다. w와 w+의 차이점은 w+를 사용하여 생성된 파일을 읽을 수도 있다는 것입니다.

에이+

파일을 검색합니다. 파일이 성공적으로 열리면 fopen()은 파일을 메모리에 로드하고 파일의 마지막 문자를 가리키는 포인터를 설정합니다. 파일이 없으면 새 파일이 생성됩니다. 파일을 열 수 없으면 NULL을 반환합니다. 파일은 읽기 및 추가(파일 끝에 쓰기)를 위해 열립니다.

rb

열기 읽기 모드의 바이너리 파일. 파일이 없으면 open() 함수는 NULL을 반환합니다.

wb

열기 쓰기 모드의 바이너리 파일. 포인터가 파일의 시작 부분으로 설정되어 있으므로 내용을 덮어씁니다. 파일이 존재하지 않는 경우, 새 파일이 생성됩니다.

ab

열기 추가 모드의 바이너리 파일. 파일 포인터가 설정되었습니다. 파일의 마지막 문자 뒤 . ㅏ 새 파일이 생성됩니다 해당 이름의 파일이 없는 경우.

rb+

열기 읽기 및 쓰기 모드의 바이너리 파일입니다. 파일이 없으면 open() 함수는 NULL을 반환합니다.

wb+

열기 읽기 및 쓰기 모드의 바이너리 파일입니다. 파일이 있으면 내용을 덮어씁니다. 파일이 존재하지 않으면 생성됩니다.

ab+

열기 읽기 및 추가 모드의 바이너리 파일입니다. 파일이 존재하지 않으면 파일이 생성됩니다.

반환 값

  • 이 함수는 실행이 성공하면 FILE에 대한 포인터를 반환하는 데 사용되며 그렇지 않으면 NULL이 반환됩니다.

fopen()의 예




Ravel은 파이썬에서 무엇을 하나요?

// C program to illustrate fopen()> #include> #include> int> main()> {> >// pointer demo to FILE> >FILE>* demo;> >// Creates a file 'demo_file'> >// with file access as write-plus mode> >demo =>fopen>(>'demo_file.txt'>,>'w+'>);> >// adds content to the file> >fprintf>(demo,>'%s %s %s'>,>'Welcome'>,>'to'>,> >'techcodeview.com'>);> >// closes the file pointed by demo> >fclose>(demo);> >return> 0;> }>

>

>

다음 명령을 실행하면 이름으로 새 파일이 생성됩니다. 데모_파일.txt 다음 내용으로:

자바 객체 배열
Welcome to techcodeview.com>

이제 파일을 조사하려면 다음 코드를 실행해야 합니다. 그러면 파일이 열리고 내용이 표시됩니다.




// C program to illustrate fopen()> #include> int> main()> {> >// pointer demo to FILE> >FILE>* demo;> >int> display;> >// Creates a file 'demo_file'> >// with file access as read mode> >demo =>fopen>(>'demo_file.txt'>,>'r'>);> >// loop to extract every characters> >while> (1) {> >// reading file> >display =>fgetc>(demo);> >// end of file indicator> >if> (>feof>(demo))> >break>;> >// displaying every characters> >printf>(>'%c'>, display);> >}> >// closes the file pointed by demo> >fclose>(demo);> >return> 0;> }>

>

>

산출

Welcome to techcodeview.com>

C의 파일 처리에 대한 추가 기사:

  1. C에서의 파일 처리의 기초
  2. 쓰기 모드의 기존 파일에 대한 fopen()
  3. C의 EOF, getc() 및 feof()
  4. 파일 열기 모드(r 대 r+)