create(basename, *rest) -> File[permalink][rdoc]create(basename, *rest) {|fp| ...} -> object-
テンポラリファイルを作成し、それを表す File オブジェクトを生成して返します(Tempfileではありません)。 createはopenに似ていますが、finalizerによるファイルの自動unlinkを行いません。
ブロックを指定しなかった場合、tmpdir(第2引数で指定したディレクトリ。省略した場合はDir.tmpdir)にファイルを作り、Fileオブジェクトを返します。このファイルは自動的に削除されません。ファイルを削除する場合は明示的にunlinkすべきです。
ブロックを指定して呼び出した場合、tmpdirにファイルを作り、 Fileオブジェクトを引数としてブロックを呼び出します。ブロック終了時にファイルをクローズするのはopenと同じですが、 createではファイルのunlinkも自動で行います。
- [PARAM] basename:
- ファイル名のプレフィクスを文字列で指定します。文字列の配列を指定した場合、先頭の要素がファイル名のプレフィックス、次の要素がサフィックスとして使われます。
- [PARAM] rest:
- Tempfile.newの第二引数以降と同じように扱われます。
[SEE_ALSO] Tempfile.open
例:
require "tempfile" GC.disable path = "" Tempfile.create("foo") do |f| path = f.path p File.exist?(path) #=> true end p File.exist?(path) #=> false