|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Tarasov Sergej 2:5020/175.2 20 Nov 2000 13:47:19 To : All Subject : Чтение текстового файла. -------------------------------------------------------------------------------- Hi All, Такая задачка. Есть несколько файлов со словами, каждое слово в новой строке, все отсортированы. Hеобходимо слить это дело в один файл. Требуется оптимизация по расходу памяти, так что читать все сразу не получается. Hо и о скорости не забывать. 1) Как это удобнее сделать? 2) Я пытаюсь делать так. Читаю из каждого файла скажем по 10000 строк в массивы. Сохраняю позицию, где я остановился. Hачинаю сливать массивы. Когда один из них заканчивается, открываю файл на нужной позиции и считываю следующие 10000 строк. Все работает как требуется, кроме одного. Иногда, закончив чтение, перл возвращает позицию не первого символа следующей строки, а второго. Следовательно, когда я затем читаю новый блок данных, первая строка читается со второго символа, и вся сортировка летит к %О?%. В чем может быть дело? Я нашел то место, где происходит сбой. Там все нормально, обычные буквы, затем "0D 0A" и дальше буквы. Если читать только этот файл, то сбой все время происходит на том же месте. Если читать не 10000 строк, а 5000, то тоже сбой, но уже в других местах. А сегодня на работе проверял, все работает нормально. --- ifmail v.2.15 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/3300863cc9f5.html, оценка из 5, голосов 10
|