くれすのPerl日記 このページをアンテナに追加 RSSフィード

この日記の方針。

  1. この日記では、超初心者向けの内容は取り扱っておりません。モジュールの利用など、実践的な内容が中心となります。
  2. ここに貼られるソースは、基本的にそのままでは動かないものばかりです。各自の責任でご利用ください。
  3. 内容が間違っていることがあります。その際はご指摘いただけるとありがたいです。「検証してみたら違う結果が出た」などの報告も大歓迎です。
  4. perl -e die

2007-02-01 (Thu)2月になってしまった

[] 一時ファイルを簡単に作る 09:29  一時ファイルを簡単に作る - くれすのPerl日記 を含むブックマーク はてなブックマーク -  一時ファイルを簡単に作る - くれすのPerl日記  一時ファイルを簡単に作る - くれすのPerl日記 のブックマークコメント

あけましておめでとうを言う前に1月が終わっちまいましたね。まあ良いや。

一時ファイルを簡単に作る方法。他のプロセスからはアクセスできない。プロセスが終了すると消える。

use File::Temp qw( tempfile );
File::Temp->safe_level( File::Temp::HIGH );  # セキュリティ高
my $fh = tempfile();  # 戻り値はファイルハンドル

読み書きは普通ファイルと同じ。

print while( <$fh> );  # 一行ずつ読み込んで出力
print $fh 'hoge';  # 文字列の書き込み
print -s $fh;  # ファイルサイズ
close( $fh );  # 最後に閉じる。

何ゆえこんなもの使ったのかというと、Spreadsheet::WriteExcelでCGIからExcelファイルを吐くときに、先にContent-Lengthを吐いてやりたかったため。バッファに落とせれば一番良かったんだけど、どうもそれが出来ない*1らしく、やむなく一時ファイルに。Excel周りはまたのちほど。

*1Excelファイルのサイズが巨大化しやすいためかな?

ArielAriel2012/02/21 21:39This was so helupfl and easy! Do you have any articles on rehab?

amzxebamzxeb2012/02/23 19:16iMyl8u <a href="http://loyflelpjbph.com/">loyflelpjbph</a>

skrknleieskrknleie2012/02/23 23:43jqhaH8 , [url=http://mppcjjxmxdtf.com/]mppcjjxmxdtf[/url], [link=http://sohlwkrdernu.com/]sohlwkrdernu[/link], http://zanwkmpkogcy.com/

skrknleieskrknleie2012/02/23 23:43jqhaH8 , [url=http://mppcjjxmxdtf.com/]mppcjjxmxdtf[/url], [link=http://sohlwkrdernu.com/]sohlwkrdernu[/link], http://zanwkmpkogcy.com/

トラックバック - http://perl.g.hatena.ne.jp/Cress/20070201