ruby方式-相对路径

Asa*_*ara 1 ruby file relative-path

File.read('file.txt')我在 ruby​​ 脚本中使用。但我不知道创建正确的相对路径的最佳方法是什么,我可以这样做

File.read(File.dirname(__FILE__) + '/file.txt)
Run Code Online (Sandbox Code Playgroud)

但我想知道红宝石是否有更漂亮的方法?

tad*_*man 6

方法有很多种,但这是最灵活的:

File.read(File.expand_path('file.txt', File.dirname(__FILE__))
Run Code Online (Sandbox Code Playgroud)

您可能还想使用Dir.pwd相对于 shell 中当前工作目录的位置。

请注意,对路径使用字符串连接可能有效,但使用expand_pathorjoin更可靠,并且可以正确处理平台差异,例如在 Windows 上,部分本身是用反斜杠连接的。