eof FILEHANDLE
eof
は、引数FILEHANDLE
の読み込みを行なったときに、EOF
が返されるか、FILEHANDLE
がオープンされていないと、1 を返します。
引数を省略したeof
は、最後に読み込みを行なったファイルのEOF
状態を返します。空のカッコをつけてeof
とすると、コマンドラインで指定されたファイルを連結したファイルの状態を返します。
eof
の使い方
while (<>)
ループの中では、最後のファイルだけを調査します。while (<>)
ループの個々のファイルを調べるには、eof(ARGV)
か、カッコなしのeof
を用います。
# 最後のファイルの最終行で特別な処理を行う while ( <> ) { if ( eof() ) { .... } print; } # 各ファイルごとに特別な処理を行う while ( <> ) { if ( eof ) { .... } print; }
Perl
でeof
が必要となることは、ほとんどないでしょう。なぜなら、データがなくなったときやエラーがあったときに、入力演算子がundef
を返すからです。