六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 133|回复: 0

Ruby Tempfile

[复制链接]

升级  76%

8

主题

8

主题

8

主题

童生

Rank: 1

积分
38
 楼主| 发表于 2013-2-5 02:10:28 | 显示全部楼层 |阅读模式
在Ruby附加库中有个操作临时文件的类Tempfile,由于一个功能需要生成一个临时文件,寻觅多时找终于找到它。

·操作临时文件的类。
·生成临时文件。文件名是"basename.pid.n",文件模式为"w+"。
·您可以像操作IO对象那样来操作Tempfile对象。
·用tmpfile.close(true)来删除生成的临时文件。
·脚本结束时, 也会删除临时文件。
·可以使用Tempfile#open来重新打开临时文件。
·临时文件的模式是0600。

super class:
SimpleDelegator

delegating class:
File

class methods:
Tempfile.new(basename[, tempdir])
Tempfile.open(basename[, tempdir])

生成名为"basenamepid.n"的临时文件。

生成的临时文件位于tempdir目录内。该目录的默认值为
ENV['TMPDIR'] || ENV['TMP'] || ENV['TEMP'] || '/tmp'

methods:
Tempfile#close([real])
关闭临时文件。若real为真, 则立即删除临时文件。除此之外, 将由GC负责删除临时文件。real的默认值为false。

Tempfile#open
重新打开已关闭的临时文件。因为是以"r+"方式打开文件, 所以能够再次读出关闭之前的内容。

Tempfile#path
返回临时文件的路径名。C:/DOCUME~1/pp/LOCALS~1/Temp/onto.5972.0

Tempfile#size ((<ruby 1.7 特性>))
返回临时文件的大小。

例子:
onto = IO.read(onto_dir)
onto_tmp = onto.gsub("owl:","owl")
onto_path = Tempfile.new('onto').path
open(onto_path,'w')do |f|
  f.puts onto_tmp
end
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表