my $tmp = File::Temp->new(UNLINK => 0, SUFFIX => ".html"); print $tmp $html; my $data = do { local $/; open my $fh, "<", $tmp->filename; <$fh>; }; print $data;
これが期待したように動かない。ファイルは /tmp/ 以下に残っているのだけ、なぜプログラム中から読めないんだろう。困ったなあ。
HTML::Parser 依存のモジュールを使いたくて、それがファイル実体を必要とするのだけどデータは DB にはいっていてファイルを作りたくないなあ、というケースで、こんなことをしてみたけどダメでした。正規表現でやっていたせいでちょっとどこかが狂うと全然動かなくなってまさに嫌な思いをしています。