ホームページ  >  記事  >  バックエンド開発  >  C言語では、fopen()関数を使用して既存のファイルを書き込みモードで開きます。

C言語では、fopen()関数を使用して既存のファイルを書き込みモードで開きます。

王林
王林転載
2023-08-27 22:33:101164ブラウズ

C言語では、fopen()関数を使用して既存のファイルを書き込みモードで開きます。

C の fopen() メソッドは、指定されたファイルを開くために使用されます。

問題を理解するために例を見てみましょう

構文

FILE *fopen(filename, mode)

fopen() を使用してファイルを開くための有効なモードは次のとおりです: 'r' 、「w」、「a」、「r」、「w」、「a」。詳細については、C ライブラリ関数 - fopen()

fopen() を参照して既存のファイルを書き込みモードで開きます

開かれるファイルが現在のディレクトリに存在しない場合、書き込みモードを使用して、新しい空のファイルが作成されます。

開こうとしているファイルが現在のディレクトリに存在し、「w」/「w」を使用して開かれた場合、内容は書き込み前に削除されます。

ソリューションがどのように機能するかを示すプログラム例

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

int main(){

   FILE *opFile = fopen("test.txt", "w");
   if (opFile == NULL){

      puts("Couldn&#39;t open file");
      exit(0);
   }
   else{

      fputs("includehelp", opFile);
      puts("Write operation successful");
      fclose(opFile);
   }
   return 0;
}

出力

Write operation successful

ファイルの初期内容 - C プログラミング言語

追加操作後のコンテンツ - ヘルプが含まれます

書き込み操作はその役割を果たしますが、書き込み操作が実行される前にファイルに存在していたコンテンツはすべて削除されます。この問題を解決するために、C プログラミング言語が更新され、プログラマがプログラムの要件に応じて使用できる 2 つの異なる方法が追加されました。

  • 'a' (追加) モード - このモードは、ファイルに既に書き込まれている内容の末尾に新しいコンテンツを追加します。

  • 'wx' モード - ファイルがディレクトリにすでに存在する場合は、NULL を返します。

「a」モードを使用した既存のファイルへの書き込みを示すプログラム

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

int main(){

   FILE *opFile = fopen("test.txt", "a");
   if (opFile == NULL){

      puts("Couldn&#39;t open file");
      exit(0);
   }
   else{

      fputs("includehelp", opFile);
      puts("Write operation successful");
      fclose(opFile);
   }
   return 0;
}

出力

Write operation successful

ファイルの初期化content − C プログラミング言語

追加操作後のコンテンツ − C プログラミング言語 includehelp

Example

Use ' Program for writing wx' モードの既存のファイルに対する

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

int main(){

   FILE *opFile = fopen("test.txt", "wx");
   if (opFile == NULL){

      puts("Couldn&#39;t open file");
      exit(0);
   }
   else{

      fputs("includehelp", opFile);
      puts("Write operation successful");
      fclose(opFile);
   }
   return 0;
}

出力

Write operation successful

以上がC言語では、fopen()関数を使用して既存のファイルを書き込みモードで開きます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。