【发布时间】:2011-04-05 04:29:54
【问题描述】:
我一直在四处寻找,但似乎找不到任何解决此问题的方法。
我需要编写一个程序,该程序将使用 ruby 内置的反射方法来告诉我有关用户将指定的类的信息。
我有这个方法:
def validFile(input)
filename = String.new()
filename = Dir.getwd + "/" + input
require(filename)
end
但是我得到了这个错误:
internal:lib/rubygems/customrequire:29:in 'require' no such file to load -- C:\Users\David\Ruby Projects\MyTestClass.rb
我不知道为什么这不起作用,但这确实有效:
def validFile(input)
filename = Dir.getwd + "/MyTestClass.rb"
require(filename)
end
此代码对我没有帮助,因为我必须让用户指定文件。我正在使用gets 方法来获取用户输入,并将其作为参数传递给该方法。
它们不是两个字符串吗?我在这里做错了什么?附加说明,我在 Windows 7 上运行最新版本的 ruby。感谢您的帮助。
【问题讨论】:
-
仅供参考,您的 filename = String.new() 没有做任何事情,因为您在之后为 filename 分配了一个新值
标签: ruby file parameters user-input require