Ruby中Dir.exists?方法未定义,如何正确使用?
- 内容介绍
- 文章标签
- 相关推荐
本文共计300个文字,预计阅读时间需要2分钟。
我检查了Dir.exists?方法,在文档中我确信我正确地使用了它。但在每次通话时,我都遇到了这个错误:未定义的方法`存在?` for Dir。我忽略了其中一些非常明显的错误。
我看着Dir.exists?方法在 documentation中,我相信我正确使用它,但在每次通话时我都遇到了这个错误:未定义的方法`存在?’ for 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会话中,检查RUBY_VERSION常量的值.
如果您对在您的机器上使用更新/多个Ruby版本感兴趣,我建议您查看RVM或rbenv.
本文共计300个文字,预计阅读时间需要2分钟。
我检查了Dir.exists?方法,在文档中我确信我正确地使用了它。但在每次通话时,我都遇到了这个错误:未定义的方法`存在?` for Dir。我忽略了其中一些非常明显的错误。
我看着Dir.exists?方法在 documentation中,我相信我正确使用它,但在每次通话时我都遇到了这个错误:未定义的方法`存在?’ for 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会话中,检查RUBY_VERSION常量的值.
如果您对在您的机器上使用更新/多个Ruby版本感兴趣,我建议您查看RVM或rbenv.

