Ole :: Storage :: FormatError:OLE2签名无效

Sug*_*nya 9 excel ruby-on-rails

我想在我的Rails应用程序中读取Excel文件.

这是我打开Excel文件并阅读它的方法.

doc = Spreadsheet.open('./try.xls', "r")
sheet = doc.worksheet 0
sheet.each do |row|
array_rows << row.to_a
end
Run Code Online (Sandbox Code Playgroud)

我有它作为rake任务.当我尝试读取此文件时,它会抛出一个错误.

Ole::Storage::FormatError: OLE2 signature is invalid
Run Code Online (Sandbox Code Playgroud)

怎么了?我该怎么办?

Sug*_*nya 11

.xls文件必须以EXCEL 2003格式保存.因此,文件 - >从所有格式另存为下拉列表选择Excel 2003年

这解决了我的问题

  • 但如果您的客户端上传文件并且它是.xlsx,这是一种来自2007年的新格式,您会怎么做? (8认同)