我正在将文件读入数组并打印如下内容:
open (FILE, "ans.txt");
@file = <FILE>;
print "@file\n";
该文件如下所示:
51.5440622646247 - 31.2571428571429
51.5440622646247 - 48.0616834439923
但是输出在第一行之后的每一行的开头有一个额外的空格:
51.5440622646247 - 31.2571428571429
51.5440622646247 - 48.0616834439923
导致此问题的原因以及如何解决?
答案 0 :(得分:4)
将文件行作为列表传递给print
,而不是在字符串中插入:
print @file, "\n";
出现问题是因为当您插入数组"@file\n"
时,它等同于以下内容:
print join($", @file) . "\n";
在perlvar
中搜索$LIST_SEPARATOR
以获取更多信息。