使用列标题或标题parsingExcel和Google文档电子表格

我有excel或谷歌文档电子表格文件,我需要parsing。 这些列的排列顺序可能不同,但第一行总是有一个标题。

我正在寻找一种在使用Roo或其他类似目的的gem读取文件时在引用单元格中使用列标题的方法。

这是我希望能够做到的

无论列位置是什么,获得标题为Widget Count的列的第四个:

thisWidgetCount = cell[4,'Widget Count']; 

我意识到我可以只是走列,并build立一个哈希标题列名称,但似乎这可能是某人已经包装成一个库。

你可以扩展Roo,或者只写一个帮手:

 oo = Openoffice.new("simple_spreadsheet.ods") this_widget_count = tcell(oo, 3, 'Widget Count') def tcell(roo, line, column_title) column = first_column.upto(last_column).map{ |column| roo.cell(1, column) }.index( column_type ) + 1 roo.cell(line, column) end 

当然,最好预先加载一个数组中的所有字幕,因为在我们的例子中,你每次都要获取字幕(这在性能上是个坏主意)