はじめに
この実験では、C 言語で新しいファイルを作成し、そこにデータを書き込む方法を学びます。C 言語では、FILE データ型がファイルを表すために使用され、fopen() 関数がファイルを読み取り、書き込み、または追記するために開きます。ファイルが開かれると、fprintf() 関数を使用してそこにデータを書き込むことができ、データを書き込んだ後は fclose() 関数を使用してファイルを閉じます。
端末を使って新しい C プログラムを作成する
ターミナルを開き、次のコマンドを使って ~/project/ ディレクトリに main.c という名前の新しい C プログラムを作成します。
nano ~/project/main.c
必要なヘッダーファイルをインクルードする
main.c ファイルに、必要なヘッダーファイルをインクルードします。
#include <stdio.h>
#include <stdlib.h>
変数とポインタを定義する
ファイルとその内容を保持するために、FILE 型の変数とポインタを定義します。
FILE *fptr;
char name[20];
int age;
float salary;
書き込み用にファイルを開く
fopen() 関数を使って書き込み用にファイルを開きます。ファイルが存在しない場合、そのファイルが作成されます。そうでない場合、その内容は上書きされます。
fptr = fopen("emp.txt", "w");
if (fptr == NULL)
{
printf("File does not exist.\n");
return 1;
}
ファイルにデータを書き込む
ユーザーに社員の名前、年齢、給与を入力してもらい、fprintf() 関数を使ってそれをファイルに書き込みます。
printf("Enter the name:\n");
scanf("%s", name);
fprintf(fptr, "Name = %s\n", name);
printf("Enter the age:\n");
scanf("%d", &age);
fprintf(fptr, "Age = %d\n", age);
printf("Enter the salary:\n");
scanf("%f", &salary);
fprintf(fptr, "Salary = %.2f\n", salary);
ファイルを閉じる
fclose() 関数を使ってファイルを閉じます。
fclose(fptr);
コードを完成させる
#include <stdio.h>
#include <stdlib.h>
int main() {
FILE *fptr;
char name[20];
int age;
float salary;
// 書き込み用に開く
fptr = fopen("emp.txt", "w");
if (fptr == NULL) {
printf("File does not exist.\n");
return 1;
}
printf("Enter the name:\n");
scanf("%s", name);
fprintf(fptr, "Name = %s\n", name);
printf("Enter the age:\n");
scanf("%d", &age);
fprintf(fptr, "Age = %d\n", age);
printf("Enter the salary:\n");
scanf("%f", &salary);
fprintf(fptr, "Salary = %.2f\n", salary);
fclose(fptr);
return 0;
}
まとめ
この実験では、C 言語で新しいファイルを作成し、FILE、fopen()、fprintf()、およびfclose()関数を使ってそのファイルにデータを書き込む方法を学びました。データを書き込んだ後は必ずファイルを閉じてデータの損失を避けることを忘れないでください。



