C++ fread関数でファイルを効率的に読み込む方法

C ++でファイルからデータを繰り返し読み取るには、fread関数を使用できます。以下は、ファイルからデータを繰り返し読み取るためにfread関数を使用したサンプルコードです。

#include <iostream>
#include <cstdio>

int main() {
    FILE *file = fopen("example.txt", "rb"); // 以二进制只读模式打开文件
    if (file == NULL) {
        std::cerr << "Error opening file" << std::endl;
        return 1;
    }

    const int bufferSize = 1024;
    char buffer[bufferSize];
    size_t bytesRead = 0;

    // 循环读取文件直到读取到文件末尾
    while ((bytesRead = fread(buffer, 1, bufferSize, file)) > 0) {
        // 处理读取到的数据,这里简单打印到控制台
        for (size_t i = 0; i < bytesRead; i++) {
            std::cout << buffer[i];
        }
    }

    fclose(file);

    return 0;
}

この例では、最初にfopen関数を使用してexample.txtというファイルを開き、その後、fread関数を使用してループ内でファイルからデータを読み取ります。データは常にbufferSizeサイズで1回に読み取られ、読み取ったデータはコンソールに出力されます。fread関数が0バイトを返すと、ファイルの末尾に達したことを意味し、ループが終了します。

ファイルストリームを閉じるために、fclose関数を使用します。

bannerAds