【C言語】ファイルに文字列を書き込む方法

この記事では、C言語でファイルに文字列を書き込む方法と、書き込みの際の注意点について解説します。

目次から探す

ファイルへの書き込み方法

プログラムでファイルに文字列を書き込む方法について説明します。

ファイルを開く

ファイルを書き込むためには、まずファイルを開く必要があります。

C言語では、fopen関数を使用してファイルを開きます。


FILE *fp; // ファイルポインタ
fp = fopen("ファイル名", "モード");

fopen関数の第1引数には、ファイル名を指定します。

ファイル名は文字列で指定し、ファイルのパスも含めることができます。

例えば、data.txtC:\\Users\\user\\data.txtのように指定します。

fopen関数の第2引数には、ファイルを開く際のモードを指定します。

以下によく使用されるモードを示します。

モード説明
“r”読み込みモード。既存のファイルを開きます。ファイルが存在しない場合はエラーになります。
“w”書き込みモード。新しいファイルを作成します。既存のファイルがある場合は、ファイルの内容が削除されます。
“a”追記モード。ファイルの末尾にデータを追加します。ファイルが存在しない場合は新しいファイルが作成されます。
“rb”バイナリ読み込みモード。バイナリファイルを読み込みます。
“wb”バイナリ書き込みモード。バイナリファイルを作成します。
“ab”バイナリ追記モード。バイナリファイルの末尾にデータを追加します。

ファイルが存在しない場合は新しく作成されます。

既に存在する場合は、ファイルの末尾に追記されます。

ファイルに文字列を書き込む

ファイルを開いた後は、fprintf関数を使用して文字列をファイルに書き込むことができます。


fprintf(fp, "書き込む文字列");

fprintf関数の第1引数には、ファイルポインタを指定します。

第2引数には、書き込む文字列を指定します。

第1引数のファイルポインタ以外、printf関数と使い方は同じで、フォーマット指定子が使用できます。

文字列はダブルクォーテーションで囲みます。

以下に、ファイルに文字列を書き込むサンプルコードを示します。


#include <stdio.h>
int main() {
    FILE *fp;
    fp = fopen("data.txt", "w");
    
    if (fp == NULL) {
        printf("ファイルを開けませんでした。\n");
        return 1;
    }
    
    fprintf(fp, "Hello, World!");
    
    fclose(fp);
    
    return 0;
}

上記のコードでは、data.txtというファイルを書き込みモードで開き、Hello, World!という文字列を書き込んでいます。

ファイルを開く際にエラーが発生した場合は、エラーメッセージを表示します。

実行すると、data.txtというファイルが作成され、その中にHello, World!という文字列が書き込まれます。

以上が、C言語でファイルに文字列を書き込む方法の説明です。

1 2

この記事のページ一覧
  1. 現在のページ
目次から探す