1

在 Ubuntu 机器上,以下代码可以正常工作,

我的 HTML 代码,这里传递 xslx 文件进行解析,

<form method="post" action="/home/parse_xlsx" enctype="multipart/form-data">
   Upload XSLX File <input type="file" name="xlsx_file" id="xlsx_file"  />
   <input type="submit" value="Post"/>
</form>

我的控制器方法,

def parse_xlsx
      xlsxFile = params[:xlsx_file]
      prefix_tmp_path = xlsxFile.path
      filename = xlsxFile.original_filename

      directory = "public/"
      path = File.join(directory, filename)
      File.open(path, "wb") { |f| f.write(xlsxFile.read) }

      require 'roo'
      s = Roo::Excelx.new(path)
      for i in 2..s.count
       puts s.cell(i,1) 
      end
  end

但在 Windows 机器上,它给了我以下错误。'rubyzip'宝石也包括在内。

Load Error: can not load zip/zipfilesystem

请提出一些解决方案..

4

1 回答 1

1

请在您的 Gemfile 添加中使用 ruby​​ zip <1.0.0 版本

gem 'rubyzip', '< 1.0.0'

请在捆绑安装后重新启动

于 2013-09-11T04:33:02.180 回答