我在 documentation 中查看了 Dir.exists?
方法我相信我使用正确,但在每次调用时我都会遇到此错误:
未定义的方法“存在吗?”对于 Dir:Class (NoMethodError)
我是否忽略了一些非常明显的事情?下面是相关代码。
#!/usr/bin/ruby
ARGV.each do |dir| # Arguements are directory names.
if !Dir.exists?(dir)
#dosomething
end
end
编辑:
使用 File.directory?
而不是 Dir.exists?
修复了我的程序,但没有解释这个错误。
最佳答案
您使用的是哪个版本的 Ruby?您提供的文档链接适用于 Ruby 2.0。 Dir.exists?
方法 was not available in 1.8 .
您可以使用以下命令从命令行检查您的 Ruby 版本:
ruby -v
或者从 IRB session 中,检查 RUBY_VERSION
常量的值。
关于Ruby Dir.存在吗?未定义的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16407955/