An Elixir library for parsing .xlsx files using SAX parsing and storing data in ETS for efficient access.
Xlsxir is an Elixir library designed to parse and extract data from .xlsx (Excel) files. It uses SAX parsing via the Erlsom Erlang library for efficiency and stores the extracted data in ETS (Erlang Term Storage) processes. This allows developers to programmatically access spreadsheet data through various query functions within their Elixir applications.
Elixir developers who need to read, process, or analyze data from Excel spreadsheets within their applications, particularly those requiring performance and memory efficiency.
Xlsxir provides a pure Elixir/Erlang solution for Excel parsing, avoiding external dependencies. Its use of SAX parsing and ETS makes it fast and suitable for large files, while its flexible API supports diverse data access patterns.
Xlsx parser for the Elixir language.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses Erlsom for SAX parsing, enabling memory-efficient handling of large .xlsx files by streaming XML, as highlighted in the key features for fast parsing.
Provides functions like get_list, get_map, and get_mda for versatile data extraction in Elixir-native formats, allowing retrieval by cell, row, or column.
Can parse single or multiple worksheets via multi_extract, returning unique ETS identifiers for concurrent access, as described in the basic usage section.
Only extracts data from .xlsx files and cannot create or edit Excel files, restricting use cases that require writing or modifying spreadsheets.
Does not support dates prior to 1/1/1900, as explicitly mentioned in the considerations section, which may be a barrier for historical data processing.
The extract/3 function is deprecated, which could lead to confusion or require code migration for users relying on older versions or examples.