我们能否使用列标题来指定我们使用 roo
gem 从中解析 excel 工作表的列号?我现在的代码是这样的:
oo = Openoffice.new("simple_spreadsheet.ods")
oo.default_sheet = oo.sheets.first
(2..oo.last_row).each do |line|
date = oo.cell(line,'A')
start_time = oo.cell(line,'B')
end_time = oo.cell(line,'C')
pause = oo.cell(line,'D')
...
end
我想从列标题中解析,而不是将列指定为 'A' 'B' 'C' ..
。我可以使用 Roo
实现吗?
最佳答案
您可以将整个标题行作为一个数组获取,并对标题行上的整个行键进行哈希处理。
oo = Openoffice.new("simple_spreadsheet.ods")
oo.default_sheet = oo.sheets.first
header = oo.row(1)
2.upto(oo.last_row) do |line|
row_data = Hash[header.zip oo.row(line)]
...
end
您还可以使用 row_data[line]
来嵌套哈希以备后用。
关于ruby-on-rails - 使用列标题使用 roo 解析 excel 工作表 - Ruby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6766129/