簡體   English   中英

使用gem roo在ruby中解析xlsx文件

[英]Parsing xlsx file in ruby using gem roo

我的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
    fullname = File.join(prefix_tmp_path,filename) 

    require 'roo'
    s = Roo::Excelx.new(fullname)

    for i in 1..14
      puts s.cell(i,3) 
    end
end

給我錯誤,

file /tmp/RackMultipart20130910-10043-u4nqsc/CMS.xlsx does not exist

當我在控制台上運行以下代碼時,會將我的“ CMS.xlsx”文件保留在rails根文件夾中,並且該文件正在運行,沒有任何錯誤。

require 'roo'
s = Roo::Excelx.new("CMS.xlsx")
for i in 1..14
  puts s.cell(i,3) 
end

請說明我要去哪里。

xlsxFile.path是文件的位置,您不必加入文件名。 如果需要保存文件,則可以在將其移動到文件位置時將其重命名為原始文件名

嘗試

 s = Roo::Excelx.new(xlsxFile.path)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM