如何使用ruby中的电子表格gem正确检索日期

电子表格中的日期列格式为'mm/dd/yyyy'但是当我通过电子表格阅读上面的列时,格式与上述格式不同。

我的代码如下:

 require 'spreadsheet' Spreadsheet.client_encoding = 'UTF-8' book = Spreadsheet.open params[:excel_file] sheet1 = book.worksheet 0 sheet1.each do |row| row.set_format 1, Spreadsheet::Format.new(:number_format => 'MM/DD/YYYY') h = Hash.new h["name"] = row[0] h["date"] = row[1] ...... end 

目前h [“date”]未正确检索。 那么我应该如何使用原始格式正确检索日期列。 任何人都可以帮我解决这个问题!

row[1].daterow[1].datetime将为您提供正确的值。 我想你可以设置格式,同时把它写成excel而不是反过来。

更新
我以为你只需要将你的excel日期翻译为ruby日期。
这应该是诀窍:
excel_date = row[1].date
ruby_date = excel_date.strftime('%m/%d/%Y')