2012-05-07 24 views
1

我想打開一個文件,其名稱應該作爲字符串給予Perl中的open()函數。如何實現。在Perl中:如何給文件名動態打開

我有如下所示的代碼,這表明在第二次公開聲明中所有的

use strict; 
use warnings; 

my $globalpath = "/lhome/tirumala2/cvadlapu_view2/3rdparty/embedded/bsa_examples/linux/"; 
my $line; 
open (TEXT_FILE, "/lhome/tirumala2/DDT_expect_module/test_strings.txt"); 

while ($line = <TEXT_FILE>) 
{ 
    print "$line"; 
    open (APP_FILE, "/lhome/tirumala2/cvadlapu_view2/3rdparty/embedded/bsa_examples/linux/$line/source/$line.c") or die "Cant open application file"; 

} 

回答

2
  1. 最前一頁一些錯誤總是使用three argument open
  2. 您在顯示的代碼中沒有使用$globalpath變量。
  3. $line變量中可能有一些數據與newline character。所以試着首先看看它,它應該起作用。

嘗試類似:

while ($line = <TEXT_FILE>) { 
chomp $line; # need to chomp the $line 
print "$line";  
open (my $app_file, "<" , "/lhome/tirumala2/cvadlapu_view2/3rdparty/embedded/bsa_examples/linux/$line/source/$line.c") or die "Cant open application file: $!"; 
}