|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Ruslan Sulemanov 2:4635/1024.27 17 Mar 2003 09:20:50 To : Renat Araslanow Subject : Длинная строка -------------------------------------------------------------------------------- RS>> open(F,"+<bigfile.txt"); RS>> seek(F,0,2); RS>> $sizew=tell F; RS>> $i=1; # размер (посколько байт считывать) RS>> while($sizew!=0) RS>> { RS>> seek(F,0,2); RS>> $sizef=tell F; RS>> $posit=$sizef - $i; RS>> seek(F,$posit,0); RS>> $buf=<F>; RS>> # сдесь конкатенирyем или ложим в массив байты RS>> # сдесь же производим поиск RS>> push(@mastr,$buf); RS>> truncate(F,$posit) or die "Can't access to file: $!\n"; RS>> $sizew-=$i; RS>> } RS>> close(F); RA> и что это лучше read(...) ? ндаа.. можно и через read. вариантов много, неизвесно полное yсловие задачи. RA> 1. ты уверен что строка в ~23млн символов больше человеку не RA> понадобится? yпс... не подyмал, сорри :) RA> 2. буфферизация stdio идёт, ИМХО, лесом. нe понял причём здесь буфферизация ? С Уважением Руслан. --- GoldED+/FreeBSD 4.8-STABLE * Origin: *JEET:* support@icu.net.ua *:UA* (2:4635/1024.27) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/45933e7586ff.html, оценка из 5, голосов 10
|