文件名是用perl中的空格创建的?

时间:2014-12-11 08:33:48

标签: perl

在perl脚本中我给出了一个文件名作为输入来在我的文件夹中创建一个文件。我已经为此编写了以下代码,但事情是它在文件名和它的扩展名之间创建了额外的空间,如myfile .txt如何删除这个? 代码是

print"file name=";
$file=<STDIN>;
open($f, "+>>$file.txt") or die "Couldn't open file $file.txt, $!";

输入:myfile

输出:

在当前文件夹中看到myfile .txt而不是myfile.txt

这是什么解决方案???

3 个答案:

答案 0 :(得分:4)

您必须删除行尾的换行符:

尝试:

print"file name=";
$file=<STDIN>;
chomp $file;
open($f, "+>>$file.txt") or die "Couldn't open file $file.txt, $!";

答案 1 :(得分:1)

使用chomp删除换行符:

my $file = <STDIN>;
chomp $file;

答案 2 :(得分:-1)

每当给用户输入时,perl会在输入的末尾附加一个\ n字符。为了避免这种情况,我们需要使用“chomp”关键字。这将删除末尾的\ n字符。

chomp($file);