Независимо от того, какую операционную систему вы используете, между вашим кодом и механизмом хранения будет несколько уровней. Жесткие диски и ленточные накопители хранят файлы в блоках, размер которых обычно составляет около 4 КБ каждый. Если вы хотите прочитать один байт, устройство все равно будет считывать весь блок в память - так будет быстрее. Устройство и ОС также могут хранить кеш блоков. Так что вы мало что можете сделать, чтобы изменить стандартное (высоко оптимизированное) поведение при чтении файлов; просто прочитайте файл так, как вам нужно, и пусть система позаботится обо всем остальном.
Если время обработки файла становится проблемой, могут помочь два варианта:
Попробуйте организовать использование более коротких файлов. Похоже, вы обрабатываете файлы журналов или что-то в этом роде - более частый запуск вашей программы может помочь, по крайней мере, повысить производительность.
Изменить способ хранения данных. Опять же, я понимаю, что файл поступает из какого-то внешнего источника, но, возможно, вы можете организовать выполнение задания, которое периодически преобразует необработанный файл во что-то, что вы можете прочитать быстрее.
Удачи.