通知
すべてクリア
2007年9月1日 5:06 PM
初歩的な質問で申し訳ございません。
どうやってもエラーが出てしまうので、こちらでアドバイスを頂けると幸いです。
ディレクトリ中のテキストファイルすべてに対し同じ処理をするプログラムを
動かしたのですが、No such fileと出てしまいます。
具体的には、
my $dirname='.';
opendir(DIR, $dirname) or die $dirname: $!;
while (my $dir=readdir(DIR))
{next unless (-f $dir);
next unless ($dir=~/\.txt$/);
print $dir, \n;
open(FILE, '$dir') or die $dir: $!;
と書いており、printのところではきちんとテキストファイル名が表示されます。
それが、openのところでは no such fileとなってしまいます。
$dirの代わりにファイル名を指定してやれば動きますが、
それだと100以上もあるテキストファイルを処理するには時間がかかってしまいます。
もうすでにここで2日以上足止めを食らっておりまして、
大変恐れ入りますが、どなたかPerl初心者の私に救いの手を差し伸べていただけると
大変有難く存じます。
よろしくお願いいたします。