検索
カレンダー
2017年4月
« 4月    
 1
2345678
9101112131415
16171819202122
23242526272829
30  
ブログメニュー
Amazon検索
キーワード:

Perlでファイル内容を一括して読み込むには

2007年8月9日

Perlではファイルを一括読み込みする場合、よく以下のように書かれます。

open( IN, "<$fileName" );
my @data = <IN>;
close(IN);

ただ、これだと読み込んだデータが改行で区切られて配列に入ってしまいます。PHPでいうところの file_get_contents みたいに改行も含む文字列として一括して読み込むには、次のようにします。

open( IN, "<$fileName" );
local $/ = undef;
my $data = <IN>;
close(IN);

これは、特殊変数である$/(改行区切り)を一時的に無効にしてから一行分のデータを読み込むということをしています。この改行の無効化により、「一行分のデータ=文末までのデータ」ということになります。