Perl で、ファイルを読み込んで処理する方法

Perl で、改行で区切られたファイルを読み込んで、1行ずつ処理するには、while() {...} のように書けばよい。

#!/usr/bin/perl # 読み込むファイル名をここに書く our $INPUT_FILE = 'yourfile.txt'; # ファイルをオープンする open(IN, $INPUT_FILE) || die("Can't open a file: $!"); # 上の open で与えられた IN で、 というように書き、while 文中で処理できる while() {
# 1行ずつ表示する
print $_; # 現在処理中の 1行は $_ で表わす。
} # ファイルをクローズする close(IN);

また、 の内容を 1行ずつ細かく処理するには、@IN = ; とするやり方も使える。以下はイテレータのループを while ではなく foreach で処理する例。

#!/usr/bin/perl # 読み込むファイル名をここに書く our $INPU_FILE = 'yourfile.txt'; # ファイルをオープンする open(IN, $INPUT_FILE) || die("Can't open a file: $!"); # 上の open で与えられた IN で、 というように書き、while 文中で処理する @IN = ; # $INPUT_FILE の内容は @IN に入ったので、ここでファイルをクローズできる close(IN); foreach my $line (@IN) {
# 1行ずつ表示する
print $line; # 現在処理中の 1行は $line で表わす。
}