У меня есть большой файл, содержащий строки. Я должен прочитать этот файл и сохранить его в буфере, используя 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 улучшать оптимизацию? Не могли бы вы поделиться еще несколькими способами, если вы знаете?
Задача ещё не решена.
Других решений пока нет …