Ruby:没有这样的文件或目录

时间:2014-10-21 00:52:38

标签: ruby

为什么我得到这个错误'ruby:当我运行我的ruby程序来读取文件时,没有这样的文件或目录--Readfile.rb(LoadError)'

我的代码:

filename = ARGV.first

txt = open(filename)

puts "Heres your file#{filename}:"
print txt.read

print "TYpe the filename again"
file_again = $stdin.gets.chomp

txt_again = open(file_again)

print txt_again.read

1 个答案:

答案 0 :(得分:0)

' ruby​​:没有这样的文件或目录 - Readingfile.rb(LoadError)'

没有堆栈跟踪,我只能推断此错误来自行txt = open(filename)。最有可能的是文件名(第一个arg传递到$ ruby file.rb)不存在或未指定(因此nil)。

为了确保您的程序能够适应不同类型的输入,您应该检查并处理没有传递有效文件名的情况。这可以通过File#exist?

完成
puts "Missing filename" and exit! unless filename = ARGV.first