Ruby 直接儲存 Tempfile 的方法
先建立一個 Tempfile,然後隨便輸入一些資料進去。
1 | require 'tempfile' |
Tempfile 在程式結束的時候會 f.unlink
刪除檔案,所以在結束之前可以使用 File.rename
移動檔案,讓檔案逃脫免於被刪除的命運。
1 | # File.rename("afile", "afile.bak") |
需要注意的是,移動完檔案之後就不能再回去使用之前的 Tempfile,否則會產生 IOError
的錯誤訊息。也就是為什麼 File.rename
過後,關閉程式不會刪除檔案的原因。
1 | f.open |
最後測試儲存後的內容
1 | File.read("cat.txt") |