Не совсем так.
Тут идея уменьшения проходов по файлу. Работает, конечно, только для больших файлов. Т.е., если брать твою аналогию, то тесто ты месишь все, а вот в половник наливаешь почуть-чуть из разных мест для одного блина.
Кстати, есть еще вариант. Т.к. кол-во строк все-равно надо узнавать, то при первом проходе можно просто построить карту файла и дальше открыть его как бинарный и пользовать seek. Но карта тоже места займет в памяти.
|