xlsxtream: Streaming & Fast XLSX Spreadsheet Writer for Ruby

Posted . Visible to the public.

When writing XLSX files, there are gems like rubyXL Show archive.org snapshot or axlsx Show archive.org snapshot . While they do offer features like formatting or graphs, to represent spreadsheet cells, they have to keep several Ruby objects in memory. When writing huge files, both will become slow and consume lots of memory.

Enter Xlsxtream Show archive.org snapshot , a Ruby XLSX library with less features (e.g. no individual cell styles) but which does away with the memory issue by streaming rows directly to disk (or an IO stream).

It is incredibly fast, even for large spreadsheets. And as long as you don't prepare all data beforehand, it requires little memory.

Xlsxtream will correctly handle Numerics, Dates, Times, and Booleans. Support for Shared String Tables (useful for huge spreadsheets with repetitive data) is also included.

Arne Hartherz
Keywords
Excel
License
Source code in this card is licensed under the MIT License.
Posted by Arne Hartherz to makandra dev (2017-11-03 17:07)