本人新手上路,有一个open 文件的问题请教:
使用open函数时,+<可实现先读后写;+>先写后读;+>>先追加然后读。但是如果要实现先读然后在指定位置追加写入如何实现呢?
------解决方案--------------------
------解决方案--------------------
+< 也可以实现, 但是文件大的时候比较吃内存。
- Perl code
open my $fh, '+<', 'file' or die $!; my @src = <$fh>; my @modify; seek($fh,0,0); for my $line (@src) { chomp($line); if ($line =~ /target/) { $line .= "append\n"; push @modify, $line; } } print $fh @modify;