在Ruby中读取文件

时间:2014-07-10 00:56:03

标签: ruby

所以,我对编程比较陌生,而且我已经开始使用ruby了。我正在经历“学习如何编写困难的方法:Ruby”,我正在练习15;文件阅读的开始。我已经复制了他们逐字提供的代码,字面上复制并粘贴它以确保,但我得到了同样的错误。我用Google搜索了错误,但无济于事。我将.rb文件放在与我正在尝试阅读的.txt文件相同的目录中。这是我的代码。

filename = ARGV.first

prompt = "> "
txt = File.open(filename)

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

puts "I'll also ask you to type it again:"
print prompt
file_again = STDIN.gets.chomp()

txt_again = File.open(file_again)

puts txt_again.read()

错误我一直这样说:

ex15.rb:19:in 'initialize': No such file of directory - ex15.txt <Errno::ENOENT>
from ex15.rb:4:in 'open'
from ex15.rb:4:in '<main>'

命令运行它:

ruby ex15.rb ex15.txt

感谢任何帮助。感谢

1 个答案:

答案 0 :(得分:3)

如果您没有为File.open()指定mode参数,则默认值为&#39; r&#39;,代表read。要读取文件,它必须已经存在。错误消息告诉您没有名为&#39; ex15.txt&#39;在当前目录中查找ruby。

要消除错误,请在当前目录中创建一个名为ex15.txt的文件,然后键入&#39; hello world&#39;在文件中。