【C言語】ファイルのテキストを数値として読み込む方法

この記事では、C言語でファイルからテキストを読み込み、それを数値として扱う方法について解説します。

プログラミング初心者の方にもわかりやすく解説していますので、ぜひ参考にしてみてください。

目次から探す

ファイルからのテキストの読み込み

まず、ファイルからテキストを読み込む方法について説明します。

C言語では、ファイルを操作するためにstdio.hヘッダーファイルを使用します。

以下のコードは、ファイルからテキストを読み込むための基本的な手順です。

#include <stdio.h>
int main() {
    FILE *file;
    char text[100];
    // ファイルを開く
    file = fopen("sample.txt", "r");
    // ファイルからテキストを読み込む
    fgets(text, sizeof(text), file);
    // ファイルを閉じる
    fclose(file);
    // 読み込んだテキストを表示する
    printf("テキスト: %s\n", text);
    return 0;
}

上記のコードでは、fopen関数を使用してファイルを開き、fgets関数を使用してテキストを読み込んでいます。

fgets関数は、指定したサイズの文字列を読み込むために使用されます。

テキストを数値に変換する方法

次に、テキストを数値に変換する方法について説明します。

C言語では、atoiatofなどの関数を使用して、文字列を整数や浮動小数点数に変換することができます。

以下のコードは、テキストを整数に変換する例です。

#include <stdio.h>
#include <stdlib.h>
int main() {
    FILE *file;
    char text[100];
    int number;
    // ファイルを開く
    file = fopen("sample.txt", "r");
    // ファイルからテキストを読み込む
    fgets(text, sizeof(text), file);
    // テキストを整数に変換する
    number = atoi(text);
    // ファイルを閉じる
    fclose(file);
    // 変換した数値を表示する
    printf("数値: %d\n", number);
    return 0;
}

上記のコードでは、atoi関数を使用してテキストを整数に変換しています。

変換結果はint型の変数に代入されます。

同様に、テキストを浮動小数点数に変換する場合は、atof関数を使用します。

#include <stdio.h>
#include <stdlib.h>
int main() {
    FILE *file;
    char text[100];
    float number;
    // ファイルを開く
    file = fopen("sample.txt", "r");
    // ファイルからテキストを読み込む
    fgets(text, sizeof(text), file);
    // テキストを浮動小数点数に変換する
    number = atof(text);
    // ファイルを閉じる
    fclose(file);
    // 変換した数値を表示する
    printf("数値: %f\n", number);
    return 0;
}

上記のコードでは、atof関数を使用してテキストを浮動小数点数に変換しています。

変換結果はfloat型の変数に代入されます。

以上が、C言語でファイルのテキストを数値として読み込む方法についての解説です。

ファイルからテキストを読み込み、必要に応じて数値に変換することで、より高度なデータ処理が可能になります。

目次から探す