fread関数を用いてC言語でファイルをどのように読み取りますか

C 言語では、 fread 関数を使用してファイルを読み取ることができます。 fread 関数のプロトタイプは次のとおりです。

size_t fread(void *ptr, size_t size, size_t count, FILE *stream);

指定されたファイルストリームからデータを読み取り、指定されたバッファに格納する関数です。関数の引数は次のとおりです。

  1. ptr:読み取り対象とするバッファーへ格納されるポインター。
  2. サイズ: 読み取る 1 つあたりのデータ項目のバイト数です。
  3. 読み取るデータ項目の個数。
  4. ストリーム:データを読み取るためのファイルストリームへのポインタ

以下にfread関数を使用してファイルを読み取る方法を示す例を示します。

#include <stdio.h>

int main() {
    FILE *file;
    char buffer[100];

    // 打开文件
    file = fopen("example.txt", "rb");
    if (file == NULL) {
        printf("无法打开文件。\n");
        return 1;
    }

    // 读取文件内容
    size_t bytesRead = fread(buffer, sizeof(char), sizeof(buffer), file);
    if (bytesRead == 0) {
        printf("无法读取文件。\n");
    } else {
        // 输出读取的文本
        printf("%s\n", buffer);
    }

    // 关闭文件
    fclose(file);

    return 0;
}

上のコードでは、最初にfopen関数でexample.txtという名前のファイルを開き、バイナリモード(“rb”)で開くよう指定します。ファイルがオープンできない場合は、エラーメッセージを表示して返します。次に、fread関数を使用してファイルの内容を読み取って、bufferバッファに格納します。最後に、printf関数を使用して読み取ったテキスト内容を出力します。最後に、fclose関数を使用してファイルを閉じます。

freadが正常に読み取ったデータ項目の数を返却することに注意してください。返却値が0の場合、読み取りが失敗したかファイルの末尾に達しています。

bannerAds