- 論壇徽章:
- 0
|
介樣的貼子相當(dāng)受矚目,大拇指扭了筋,打字好麻煩。
lz 給的第二題,俺試了一下,和寫(xiě)一個(gè)文件的速度相當(dāng),也想不出什么好辦法了,請(qǐng) Perl 高手指點(diǎn)。
第一題俺給個(gè)解法。
另外,幾十M的文件確實(shí)測(cè)不出啥東西,俺用2G的文件測(cè)了下,還行。
- my $offset = 0; my $s_counter = 0;
- my $buf = q{};
- open(FILE, '<', 'ceshi') or die $!;
- while (1) {
- seek(FILE, $offset, 2);
- read(FILE, $buf, 1);
- if ($buf eq $/) {
- $s_counter++;
- if ($s_counter == 7) { print( (<FILE>)); last; }
- }
- $offset--;
- }
- close FILE;
復(fù)制代碼 Total Elapsed Time = 0.030991 Seconds
User+System Time = 0.030991 Seconds |
|