File.join什么时候有用?

Fah*_*dah 28 ruby

通过阅读文档,很明显File.join将给定参数与/字符连接起来.
什么时候使用这个,相反filenames.join('/'),有益吗?

Mla*_*vić 69

还有另一个微妙的区别:

File.join('foo','bar')
#=> "foo/bar"
['foo','bar'].join('/')
#=> "foo/bar"
Run Code Online (Sandbox Code Playgroud)

但是,如果你传递一个已经结束的参数/(通常在处理路径时),结果中不会有两个斜杠:

File.join('foo/','bar')
#=> "foo/bar"
['foo/','bar'].join('/')
#=> "foo//bar"
Run Code Online (Sandbox Code Playgroud)

  • 有时你认为最琐碎的答案得到最多的赞成.[这](http://stackoverflow.com/questions/1793693/why-would-yaml-be-unavailable-in-production/1793719#1793719)是我最热烈的答案之一. (2认同)

Mat*_*hen 15

它将使用File::SEPARATOR,理论上不需要/.

  • 实际上,它也在Windows上使用`/`.因为`File :: SEPARATOR`在Windows上是"/" - 只有`File :: ALT_SEPARATOR`是"\\". (6认同)
  • 是否有任何平台Ruby运行在哪里/不是有效的文件分隔符? (2认同)