Directory的mkdir和新方法之间的区别

wok*_*uel 2 ruby

以下Ruby方法有什么区别?

Dir.new(string) and Dir.mkdir(string)
Run Code Online (Sandbox Code Playgroud)

我不知道在哪种情况下使用哪一个以及它用于什么

met*_*ori 5

https://ruby-doc.org/core-2.2.0/Dir.html

Dir.new(s)"返回指定目录的新目录对象".也就是说,它用于打开目录; 如果路径目录s不存在,则抛出异常.

  • 没有阻止,Dir.open(s)是一个同义词Dir.new(s).如果存在块,例如存在,Dir.open(s) { |d| ... }则将目录对象d作为参数传递.目录在块的末尾关闭,并Dir.open返回块的值

Dir.mkdir(s) 在路径上创建一个目录,s并0在成功的情况下返回.