I created a quick and dirty benchmark comparing the four libraries that can read xlsx files in the above table.
Ruby read excel file xlsx.
Book spreadsheet open myexcel xls.
The result for reading the xlsx file with the two functions is same.
This project contains sample code for reading excel files with different ruby libraries xlsx file examples.
This gem supports operating on xlsx files open xml format.
Roo helped with reading excel files and we can do this by.
Sheet1 book worksheet 0 sheet1 each do row puts row inspect.
I also found a simple gem called simple xlsx reader that was easy to use and had everything i needed.
Roo implements read access for all common spreadsheet types.
Some googling brought me to the ruby gems roo and write xlsx.
When i called simplexlsxreader open file path memory consumption would go to 2gb and it would stay that way until the garbage collector cleaned it.
Xlsx roo spreadsheet open file path xlsx roo excelx new xlsx spreadsheet xlsx sheet sheet number once we have access to a desired excel file we can get whatever data we need from it.
I am trying to read an excel spreadsheet file with ruby but it is not reading the content of the file.
Below are code samples for reading current ooxml excel files using rubyxl roo creek and simple xlsx reader.
I have samples for reading xlsx files using each of the above libraries in the linked github project.
The only difference is that when read excel is used excel format is called internally by the read excel function to determine if the path is xls or xlsx file from the file extension.
Difference between read xlsx and read excel functions.
End it is giving me the following.
What i needed was a library that would read excel rows in streams.
While it is capable of properly parsing the entire ooxml structure its current main emphasis is on reading files produced by ms excel making minor modifications to them and saving them to be opened again while preserving as much of the structure as possible.
Install as a gem.