我使用PTY.spawn使用gem“roo”打开Excel文件,但它只显示错误
INPUT_FILE = 'sample.xls'
begin
PTY.spawn("Roo::Spreadsheet.open '#{INPUT_FILE}'") do |r_f,w_f,pid|
r_f.each {|line| puts line}
end
rescue Errno::EIO
end
但我收到错误:“sh:1:Roo :: Spreadsheet.open:not found”
有人能告诉我为什么会收到此错误吗?
提前致谢
答案 0 :(得分:0)
发生此错误是因为您尝试直接从终端执行ruby代码,在您的情况下尝试类似:
PTY.spawn("irb") do |irb_out, irb_in, pid|
irb_in.printf("require 'roo'\n")
irb_in.printf("Roo::Spreadsheet.open '#{INPUT_FILE}'\n")
irb_out.each {|line| puts line}
end