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 に答える