C-standard-library-c-function-fopen

提供:Dev Guides
移動先:案内検索

Cライブラリ関数-fopen()

説明

Cライブラリ関数 FILE fopen(const char filename、const char mode)は、指定された *mode を使用して、指定された filename をfilenameで開きます。

宣言

以下は、fopen()関数の宣言です。

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

パラメーター

  • ファイル名-これは、開くファイルの名前を含むC文字列です。
  • mode -これはファイルアクセスモードを含むC文字列です。 それが含まれています-
Sr.No. Mode & Description
1

"r"

読み取り用にファイルを開きます。 ファイルが存在する必要があります。

2

"w"

書き込み用の空のファイルを作成します。 同じ名前のファイルが既に存在する場合、その内容は消去され、ファイルは新しい空のファイルと見なされます。

3

"a"

ファイルに追加します。 書き込み操作。ファイルの最後にデータを追加します。 ファイルが存在しない場合は作成されます。

4

"r+"

ファイルを開いて、読み取りと書き込みの両方を更新します。 ファイルが存在する必要があります。

5

"w+"

読み取りと書き込みの両方のために空のファイルを作成します。

6

"a+"

読み取りおよび追加のためにファイルを開きます。

戻り値

この関数は、FILEポインターを返します。 そうでない場合、NULLが返され、エラーを示すためにグローバル変数errnoが設定されます。

次の例は、fopen()関数の使用法を示しています。

#include <stdio.h>
#include <stdlib.h>

int main () {
   FILE * fp;

   fp = fopen ("file.txt", "w+");
   fprintf(fp, "%s %s %s %d", "We", "are", "in", 2012);

   fclose(fp);

   return(0);
}

次の内容のファイル file.txt を作成する上記のプログラムをコンパイルして実行します-

We are in 2012

今、私たちは次のプログラムを使用して上記のファイルの内容を見てみましょう-

#include <stdio.h>

int main () {
   FILE *fp;
   int c;

   fp = fopen("file.txt","r");
   while(1) {
      c = fgetc(fp);
      if( feof(fp) ) {
         break ;
      }
      printf("%c", c);
   }
   fclose(fp);

   return(0);
}

上記のプログラムをコンパイルして実行し、次の結果を生成しましょう-

We are in 2012