如何将ruby代码的输出文件写入特定的目录/位置?

时间:2018-01-03 14:46:27

标签: ruby

我有ruby代码,它将创建输出文件,当前文件正在我的脚本运行的位置创建。 我必须将输出文件写入不同的位置,所以我指定显式路径到代码。但它无法创建文件。我的代码看起来像:

fname = "C:\repo\cookbooks\abc\recipes\add.rb"
somefile = File.open(fname,"w")  
somefile.puts "end"
somefile.close

如果我指定

fname = "add.rb"

它正在工作,但我想在不同的位置创建它,就像我上面提到的C:\ drive中的代码。

1 个答案:

答案 0 :(得分:1)

因为字符串中的\是特殊字符,所以你应该使用\\(双反斜杠)来获得单个反斜杠。但是有更好的方法,你根本不需要处理反斜杠:

fname = File.join("C:", "repo", "cookbooks", "abc", "recipes", "add.rb")