2011-09-02 16 views
6

Ruby'de bir excel dosyasını okumaya çalışıyorum ve verileri alıp bir mysql veritabanına ekliyorum. Elektronik tablo :: excel ve mysql taşlar kullanıyorum. i okumak için dosyayı açmak için tablo mücevher kullanabilmek için gibi olamaz nedense ... Bu Senaryoyu çalıştırdığınızda bu garip hata alıyorum benim kodruby ​​excel okuyucu, elektronik tablo mücevher

require 'rubygems' 
require 'spreadsheet' 
require 'mysql' 

Spreadsheet.client_encoding = 'UTF-8' 

book = Spreadsheet.open '/home/data/teams.xlsb' 

b1 = book.worksheet('team1') 

olduğunu

/usr/local/lib/ruby/gems/1.8/gems/ruby-ole-1.2.11.1/lib/ole/storage/base.rb:376:in `validate!': OLE2 signature is invalid (Ole::Storage::FormatError) 
    from /usr/local/lib/ruby/gems/1.8/gems/ruby-ole-1.2.11.1/lib/ole/storage/base.rb:368:in `initialize' 
    from /usr/local/lib/ruby/gems/1.8/gems/ruby-ole-1.2.11.1/lib/ole/storage/base.rb:110:in `new' 
    from /usr/local/lib/ruby/gems/1.8/gems/ruby-ole-1.2.11.1/lib/ole/storage/base.rb:110:in `load' 
    from /usr/local/lib/ruby/gems/1.8/gems/ruby-ole-1.2.11.1/lib/ole/storage/base.rb:77:in `initialize' 
    from /usr/local/lib/ruby/gems/1.8/gems/ruby-ole-1.2.11.1/lib/ole/storage/base.rb:83:in `new' 
    from /usr/local/lib/ruby/gems/1.8/gems/ruby-ole-1.2.11.1/lib/ole/storage/base.rb:83:in `open' 
    from /usr/local/lib/ruby/gems/1.8/gems/spreadsheet-0.6.5.8/lib/spreadsheet/excel/reader.rb:1144:in `setup' 
    from /usr/local/lib/ruby/gems/1.8/gems/spreadsheet-0.6.5.8/lib/spreadsheet/excel/reader.rb:121:in `read' 
    from /usr/local/lib/ruby/gems/1.8/gems/spreadsheet-0.6.5.8/lib/spreadsheet/excel/workbook.rb:32:in `open' 
    from /usr/local/lib/ruby/gems/1.8/gems/spreadsheet-0.6.5.8/lib/spreadsheet.rb:62:in `open' 
    from /usr/local/lib/ruby/gems/1.8/gems/spreadsheet-0.6.5.8/lib/spreadsheet.rb:68:in `open' 
    from sizes_importer2.rb:7 

Bu gemin .xlsb dosyalarını destekleyemeyebileceği bir yere okuyorum. Bunun doğru olup olmadığını bilmiyorum, ancak eğer birisi bana etrafta nasıl dolaşacağımı veya başka bir şeylerin yanlış olup olmadığını söyleyebilir mi? Tamamen kayboldum ve bu hata ile ilgili herhangi bir yardım için minnettarım. teşekkürler

+4

dosyaları 2003 xls'e dönüştürmek zorunda kaldı – Crobos

cevap

5

Roo'ya bir göz attınız mı? ->http://rubygems.org/gems/roo

+3

Benim için çalışmadı! – barbolo

+1

@barbolo: xlsx desteğinin işe yaramadığını görebilirsiniz, ancak yüklemek için 'Excelx.new 'kullanmalısınız. ÇALIŞIYOR bir cazibe gibi. –

+0

Oy vermek zorundaydım. Linux hakkında yardım istemek ve pencereleri kullanması söylendi. – baash05

İlgili konular