在目录中打开多个文件时出现问题

时间:2019-04-17 16:36:43

标签: file perl directory file-handling

我需要打开目录.tab中扩展名为gor/的所有文件,然后将这些文件用于进一步的计算。问题是,我的代码成功打开了目录并找到了这些文件,但是由于某种原因,它没有打开它们。可能是什么问题?

use strict;
use warnings;

my $dirname = "gor";
opendir(DIR, $dirname) || die "Error in opening dir $dirname\n";
my @files = grep {/tab/} readdir (DIR);
foreach my $file(@files){
    print $file, "\n";
    if(open(my $fh, $file)){
        my @arr;
        while(<$fh>){
            chomp;
            push @arr, $_;
        }
        close $fh;
        print @arr;
    }

}
closedir DIR;

从此代码中,我希望得到文件的名称,然后得到文件的全部内容(并在所有文件中继续),而我得到的只是文件名。在foreach之后移动closedir循环可以得到相同的结果。

0 个答案:

没有答案