【问题标题】:How to set the path of a Tempfile in ruby如何在 ruby​​ 中设置 Tempfile 的路径
【发布时间】:2014-04-24 02:22:26
【问题描述】:

我有几个文件想转换成 Tempfile 对象。

有没有办法做类似的事情:Tempfile.new(path)

我问的原因是我正在尝试运行一个 ImageMagick 命令,该命令从一个 Tempfile 创建多个文件。不幸的是,新创建的文件没有被垃圾收集......

谢谢!

【问题讨论】:

  • 你有那些文件对象的引用,或者你知道文件名吗?
  • Ruby 的 Tempfile 采用自定义名称 ruby-doc.org/stdlib-1.9.3/libdoc/tempfile/rdoc/Tempfile.html
  • 抱歉,Tempfile.new('foo') 不起作用吗?或者您是在问这是否是方法名称,因为如果是这样,那么您猜对了。
  • Tempfile.new('foo') 将创建一个新文件。我想打开一个现有文件。我有这些文件的完整路径(包括文件名)。我唯一能想到的就是将文件转储到一个新的临时文件中。似乎效率低下。

标签: ruby


【解决方案1】:

刚刚想到一件事。不要将新文件转储到临时文件中,只需覆盖它即可。

tempfile = Tempfile.new('foo')
tempfile.close
FileUtils.mv path, tempfile.path
tempfile.open

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-22
    • 1970-01-01
    • 2021-10-30
    • 2017-09-24
    • 1970-01-01
    • 2022-01-02
    • 2011-11-27
    相关资源
    最近更新 更多