我已经下载了以下文件:rawdata_2001.text
我有以下perl代码:
open TEXTFILE, "rawdata_2001.text";
while (<TEXTFILE>) {
print;
}
Run Code Online (Sandbox Code Playgroud)
但是,这仅打印文件中的最后一行.有什么想法吗?任何反馈将不胜感激.
该文件仅使用回车格式化,因此它被作为一行吸入.您应该能够将$ /设置为"\ r"以使其逐行读取.然后你应该用chomp剥离回车,并确保在字符串后面打印一个新行.
您的文件可能正在使用"\r"行结尾,但您的终端期望"\n"或"\r\n".试试跑步:
open my $textfile, '<', "rawdata_2001.text" or die;
while (<$textfile>) {
chomp;
print "$_\n";
}
Run Code Online (Sandbox Code Playgroud)
您还可以尝试在循环之前更改输入记录分隔符local $/ = $ending;,其中$ending可能是"\n", "\r\n", "\r"