SoaringHawk
Постоялец
- Регистрация
- 25 Апр 2009
- Сообщения
- 61
- Реакции
- 2
- Автор темы
- #1
Есть файл text.txt.gz. В нем много строк текста. Необходима быстрая выборка нужной строки, зная ее номер.
Вариант "в лоб" просто перебирать каждую строку, пока не дойдешь до нужной:
Но этот способ жутко медленный, когда строк за 1000 и нужно, например 999-ю. Дело в том, что не известны позиции новых строк, что бы использовать gzseek.
Вариант "в лоб" просто перебирать каждую строку, пока не дойдешь до нужной:
PHP:
$gzf = gzopen($имя_файла, 'r');
for($i = 0; $i <= $номер_нужной_строки; $i++)
{
$ktxt = gzgets($gzf, 4096);
}
gzclose($gzf);