1

当我尝试这个时roo gem

irb(main):001:0> require 'roo'
   => true
irb(main):002:0> oo = Excel.new("C:/Users/Abash/Desktop/test1.xls")

**NameError: uninitialized constant Excel** from (irb):2 
from C:/Ruby193/bin/irb:12:in `<main>'

当我尝试这个时spreadsheet gem

irb(main):001:0> require 'spreadsheet'
   => true
   irb(main):002:0>Spreadsheet.client_encoding = 'UTF-8'
   => "UTF-8"
   irb(main):003:0> book = Spreadsheet.open 'C:/Users/Abash/Desktop/test1.xls'

**Errno::EACCES: Permission denied** - C:/Users/Abash/Desktop/test1.xls
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/spreadsheet-0.8.2/lib/spreadsheet.rb:69:in `initialize'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/spreadsheet-0.8.2/lib/spreadsheet.rb:69:in `open'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/spreadsheet-0.8.2/lib/spreadsheet.rb:69:in `open'
from (irb):3
from C:/Ruby193/bin/irb:12:in `<main>'

有人可以向我展示解决这些错误的方法吗?

4

1 回答 1

1

我相信您使用的是 ruby​​ 1.9 或更高版本。在这种情况下,您需要在创建新实例时指定 gem。

 require 'roo'

 s =Roo::Excel.new("myspreadsheet.xls")       

 s =Roo::Excelx.new("myspreadsheet.xlsx")  
于 2013-08-08T08:58:42.893 回答