C言語の関数ファイルの使い方
C言語では、ヘッダファイルで提供されているファイル操作関数を利用して、ファイルの読み込み/書き込みを行うことができます。主なファイル関数とその使用方法を以下に示します。
- ファイルを開く:fopen 関数を使うとファイルを開いて、そのファイルへのポインタを返します。関数プロトタイプは次のとおりです。
- FILE *fopen(const char * filename, const char * mode);
- 例えば、「file.txt」というテキストファイルを書き込み専用で開きたい場合は以下のように記述します。
- FILE *file = fopen(“file.txt”, “r”);
if (file == NULL) {
// ファイルのオープンに失敗
} - ファイルを閉じる: 開いているファイルを閉じるには `fclose` 関数を使います。関数のプロトタイプは次のとおりです。
- int fclose(FILE *stream);
- たとえば、以前に開いたファイルを閉じるには、以下のコードを使用することができます。
- if (fclose(file) != 0) {
// ファイルが閉じることができなかった
} - ファイルを読み込む: fread や fgets 関数を使用して、ファイルから内容を読み込むことができます。fread 関数はバイナリ ファイルに、fgets 関数はテキスト ファイルに使用されます。たとえば、テキスト ファイルの 1 行を読み込むには、次のコードを使用できます。
- char buffer[100];
if (fgets(buffer, sizeof(buffer), file) != NULL) {
// 1行の読み込みに成功
} - ファイルへの書き込み方法はfwrite、fputs関数で行います。fwriteはバイナリファイルへの書き込み、fputsはテキストファイルへの書き込みを行います。例えば、テキストファイルに一行書き込む場合は次のコードで行えます。
- fputs(“Hello, World!”, file) != EOF ? // 1行を正常に書き込み
ファイル操作関数はファイルオープン成功を確認してから利用し、利用後は必ずファイルをクローズすることが必要です。またファイル操作ではファイルオープンエラーやクローズエラーなどが発生することがあり、返り値で判断して適切に対処することが大切です。