perl使用$ _无法读取文件中的每一行

Min*_*t.K 0 perl

我正在阅读'开始Perl:Simon Cozen的在线书'.在下面的代码中,打印注释打印了我的data.txt文件的所有行.但我的while循环不打印任何东西.请帮我解决这个问题.

open(FILE,'data.txt');
my $line = <FILE>;
my @lines = <FILE>;
print @lines;

while (<FILE>) {
    print "$_";
}
Run Code Online (Sandbox Code Playgroud)

Joh*_*136 5

由于您已经阅读了该文件,现在您已经"结束"了,您需要关闭该文件并再次打开它以重新开始.

或者,seek FILE, 0, SEEK_SET;在打开的文件上使用重置为开始而不关闭并重新打开.(use Fcntl qw( SEEK_SET );用于导入SEEK_SET.)