未定义的方法'关闭' for main:Ruby中的Object(NoMethodError)

时间:2015-04-15 09:10:09

标签: ruby file fclose learn-ruby-the-hard-way

filename = ARGV.first

txt = open filename

puts "Here's your file #{filename}:"
print txt.read

puts "Type the filename again: "
file_again = $stdin.gets.chomp

txt_again = open file_again

print txt_again.read

close(txt)
close(txt_again)

程序运行正常直至结束,但在打印第二个文件的内容后立即崩溃并带有标题错误消息。

我使用(.class)检查了txt,txt_again,并确认两者都是File对象。为什么不靠近工作?

1 个答案:

答案 0 :(得分:5)

您需要在文件对象上调用close

txt.close