この記事では、C言語でファイルのデータを配列に格納する方法について解説します。
初心者の方にもわかりやすく説明していますので、ぜひ参考にしてみてください。
目次から探す
ファイルのデータを配列に格納する方法
ファイルの読み込み
まずは、ファイルを読み込む方法です。
C言語では、ファイルを操作するためにFILE型
のポインタを使用します。
以下のようなコードを使って、ファイルを開いて読み込むことができます。
#include <stdio.h>
int main() {
FILE *fp; // ファイルポインタの宣言
char ch;
// ファイルを開く
fp = fopen("data.txt", "r");
// ファイルから1文字ずつ読み込む
while ((ch = fgetc(fp)) != EOF) {
// 読み込んだ文字を表示するなどの処理を行う
printf("%c", ch);
}
// ファイルを閉じる
fclose(fp);
return 0;
}
上記のコードでは、fopen関数
を使ってファイルを開き、fgetc関数
を使って1文字ずつ読み込んでいます。
EOF
はファイルの終端を表す特殊な値であり、ファイルの終わりまで読み込むまでループを繰り返します。
読み込んだ文字は、printf関数
を使って表示することができます。
データの配列への格納
配列にデータを格納するためには、まず配列の要素数を決める必要があります。
以下のコードは、ファイルから整数データを読み込んで配列に格納する例です。
#include <stdio.h>
#define MAX_SIZE 100 // 配列の最大要素数
int main() {
FILE *fp;
int data[MAX_SIZE];
int i = 0;
// ファイルを開く
fp = fopen("data.txt", "r");
// ファイルから整数データを読み込んで配列に格納する
while (fscanf(fp, "%d", &data[i]) != EOF) {
i++;
}
// ファイルを閉じる
fclose(fp);
// 配列の中身を表示する
for (int j = 0; j < i; j++) {
printf("%d ", data[j]);
}
return 0;
}
上記のコードでは、fscanf関数
を使ってファイルから整数データを読み込み、配列に格納しています。
fscanf関数
は、指定したフォーマットに従ってデータを読み込むことができます。
この例では、整数データを読み込むために%d
というフォーマットを使用しています。
配列に格納したデータは、後で必要に応じて処理することができます。
上記のコードでは、配列の中身を表示するためにprintf関数
を使っていますが、他の処理を行うことも可能です。
以上が、C言語でファイルのデータを配列に格納する方法の解説です。