Как прочитать файл и сохранить в буфере с оптимизацией

У меня есть большой файл, содержащий строки. Я должен прочитать этот файл и сохранить его в буфере, используя C или C++. Я попытался сделать это следующим образом:

FILE* file = fopen(fileName.c_str(), "r");
assert(file != NULL);
size_t BUF_SIZE = 10 * 1024 * 1024;
char* buf = new char[BUF_SIZE];
string contents;
while (!feof(file))
{
    int ret = fread(buf, BUF_SIZE, 1, file);
    assert(ret != -1);
    contents.append(buf);
}

Данные в файле будут строками, и я должен найти символ с максимальной частотой. Можно ли оптимизировать код больше, чем этот? Будет ли использование BinaryReader улучшать оптимизацию? Не могли бы вы поделиться еще несколькими способами, если вы знаете?

0 ответов

Другие вопросы по тегам