- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Perl ファイルハンドルを閉じずに反映させる)
Perlファイルハンドルを閉じずに反映させる方法はあるか
このQ&Aのポイント
- Perlのopenメソッドで開いたファイルハンドルにprint文で書き込みを行った際に、ファイルハンドルをcloseせずに書き込みを反映させる方法はあるか
- openメソッドで開いたファイルハンドルに書き込みを行った際に、ファイルハンドルをcloseせずに反映させる方法はあるか
- Perlでファイルハンドルを閉じずに反映させる方法はあるか
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
$|= は、現在選択されているファイルハンドル(デフォルトで STDOUT)に対するバッファリングの設定ですので、それだけではだめです。 一旦、OUT を select してからバッファリング設定するようにします。 その後で元にselectし直さないと、普通の print が使えなくなりますから、 ---ここから my $oldfh = select(OUT); $| = 1; select($oldfh); ---ここまで といったコードを、open の後に入れてみてください。
お礼
mtaka2様 ご回答ありがとうございます!! さっそく試してみましたが、見事!動きました。 > 現在選択されているファイルハンドル(デフォルトで STDOUT)に対するバッファリングの設定 そういうことだったんですね~理解しました。 大変助かりました。ありがとうございました。