在Ruby中,如何将另一个目录中的文件指定为输入?

时间:2013-01-21 04:22:10

标签: ruby relative-path directory

这可能有一个简单的答案,但我正在开发一个测试套件,它需要一个位于不同文件夹中的输入文件。我想使用相对路径,如下所示:

@graph = Graph.new('../lib/test_input.txt')

但Ruby并不喜欢这样。使用像这样的相对文件路径的最佳方法是什么?

由于

1 个答案:

答案 0 :(得分:6)

如果您的意思是相对于当前文件,您可能需要以下内容:

@graph = Graph.new(File.expand_path(__FILE__, "../lib/test_input.txt"))

如果您的意思是相对于当前目录,您可能需要以下内容:

@graph = Graph.new(File.expand_path(Dir.pwd, "../lib/test_input.txt"))

bonus link!