我想打开文件并读取它从控制台传递的内容。 喜欢
filename = gets()
File.open(filename,'r') do |file|
但是在控制台上收到如下错误:
test.rb:7:in `initialize': Invalid argument - myfile (Errno::EINVAL)
from test.rb:7:in `open'
from test.rb:7
是否可以读取从控制台获取文件名的文件并在ruby中执行do |file| ..end
?
答案 0 :(得分:5)
您从STDIN读取的字符串有一个尾随\n
。摆脱它。
filename = gets().chomp