我有一个将几行写入文件的 perl 脚本。(我检查并查看文件是否正确写入)之后我想将内容打印到屏幕上,我尝试这样做的方式是读取文件并打印它
open (FILE, '>', "tmpLogFile.txt") or die "could not open the log file\n";
$aaa = <FILE>;
close (FILE);
print $aaa;
Run Code Online (Sandbox Code Playgroud)
但我在屏幕上什么也没有,我做错了什么?
要读取,您需要将打开模式指定为<. 此外,$aaa = <FILE>具有标量上下文,并且只读取一行。使用print <FILE>您可以拥有列表上下文并阅读所有行:
open (FILE, '<', "tmpLogFile.txt") or die "could not open the log file\n";
print <FILE>;
close (FILE);
Run Code Online (Sandbox Code Playgroud)
小智 0
尝试这个:
use strict;
use warnings;
my $filename = 'data.txt';
open(my $fh, '<:encoding(UTF-8)', $filename)
or die "Could not open file '$filename' $!";
while (my $row = <$fh>) {
chomp $row;
print "$row\n";
}
print "done\n"
Run Code Online (Sandbox Code Playgroud)