2013-07-13 89 views
-1

我試圖用下面的代碼讀取文件中的行。但是,此代碼的結果是打印與文檔所在行相同的行。Perl - 讀取文件行

open (file_to_rand, "./files/file07.txt") or die "Could not open file"; 
foreach $line (<file_to_rand>) { 
    push(@array,$line); 
} 
close(file_to_rand); 

這段代碼有什麼問題?

+0

那麼,什麼是這個問題? – devnull

+1

不,這個代碼的「結果」是不打印任何東西。這個代碼中唯一可以輸出任何內容的就是'die'。另外,打印與文檔所在行相同的行的語句「」是語法錯誤,並不代表任何意義。 – TLP

回答

3

如果你只是想讀取所有行到數組(這不是有效的大文件):

open my $fh, "<", "./files/file07.txt" or die "Could not open file"; 
my @lines = readline($fh); 
close $fh; 
#possible you need to remove new line character at the end of each line: 
chomp @lines; 

順便說一句:這是Perl和不使用Perl

+2

除非這個PERL的人們一直在談論的是一個完全不同的動物,像我們這樣的普通人從來沒有聽說過。 – innaM

+0

是的!哈哈哈 –