2011-10-24 6 views
1

私は、ユーザーからの入力を受け取るperlでテキストファイルを作成する方法についていくつかの助けを捧げたいと思っていました。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

エラーの解釈(「これはテキストファイルではないと思います」)ではなく、エラーが発生したことを正確に伝える必要があります。例えば。 "ファイル名が不規則です"または "vimでファイルを開こうとするとファイルが見つかりません" – TLP

答えて

6

アップデート:私はちょうどあなたがあなたのファイル名の末尾に添付改行を持つことになりますので、あなたが、そこchompあなたのSTDINを実現しませんでしたが。

chomp $filename; 

あなたのファイル名でその特定のヒザックを解決する必要があります。

openを使用する場合は、3つの引数と字句ファイルハンドルを使用することをお勧めします。 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 
関連する問題