我希望得到一些帮助,以便如何在perl中专门创建一个接收用户输入的文本文件。
print "\ndirectory has been changed";
print "\nDear user, please enter the name of the file you want to create ";
my $nameFile = <>;
open MYFILE, ">$nameFile" or die "couldn't open the file $!";
这将创建一个文件,但不是文本文件。
问候 阿里安
答案 0 :(得分:6)
更新:我刚刚意识到你没有chomp
你的STDIN,所以你的文件名末尾附有换行符。
chomp $filename;
应该使用您的文件名解决特定的打嗝。
使用open
的推荐方法是使用三个参数和一个词法文件句柄。 MYFILE
是一个全球性的,具有所有固有的缺点和好处。
use autodie; # will check important errors for you, such as open
open my $fh, '>', $namefile;
# ^- lexical ^- explicit mode ^- filename separated from mode
print $fh "This is a textfile\n"; # put something in the file