OSのデフォルトの一時領域にファイルを作成する

JavaでOSのデフォルトの一時領域にテンポラリファイルを作る場合。

File f = File.createTempFile("hoge", ".tmp");

これだけ。

createTempFileには、ディレクトリを指定しないオーバーロードがあって、それを呼ぶとOSのデフォルトの一時領域にファイルを作ってくれる。

例えばWindows Vistaでは "C:\Users\(ユーザ名)\AppData\Local\Temp\" になる。

てっきり、createTempFileはディレクトリが必須パラメータなのかと思ってた。だから、別な方法であらかじめOSの一時領域のパスを取得しておいて、それをcreateTempFileに渡すことばっかり考えていた。

このことはドキュメントに普通に書いてあった。Java 1.2から使えるって。超基礎だった。

まあそういう事もあるよね。