xlnt
  • Read Me
  • Introduction
    • Motivation
    • Examples
    • Features
    • Installation
  • Basics
    • Workbook
    • Worksheet
    • Cell
    • Iteration
    • Memory model
  • Advanced
    • Formatting
    • Properties
    • Printing
    • Encryption
    • Views
  • API Reference
  • Source code
  • Change Log
  • Contributing
  • License
Powered by GitBook
On this page
  • Introduction
  • About this fork
  • Example
  • Documentation
  • Building xlnt - From source
  • Building xlnt - Using vcpkg
  • License
Edit on GitHub

Read Me

NextIntroduction

Last updated 1 month ago

Introduction

xlnt is a modern C++ library (requiring c++11 or above) for manipulating spreadsheets in memory and reading/writing them from/to XLSX (Microsoft Excel®) files as described in . The first public release of xlnt version 1.0 was on May 10th, 2017. Current work is focused on increasing compatibility, improving performance, and brainstorming future development goals. For a high-level summary of what you can do with this library, see . Contributions are welcome in the form of pull requests or discussions on .

About this fork

This repo is a community effort to continue the development of xlnt, after the has been unmaintained for many years (see ). The is hosted at GitHub. Feel free to participate in this community effort by submitting and to this new community-driven repo. Issues and PRs on the original repo will not be transferred in bulk to this repo, but you may consider creating a similar issue or PR against this repo for items of interest to you.

Example

Including xlnt in your project, creating a new spreadsheet, and saving it as "example.xlsx"

#include <xlnt/xlnt.hpp>

int main()
{
    xlnt::workbook wb;
    xlnt::worksheet ws = wb.active_sheet();
    ws.cell("A1").value(5);
    ws.cell("B2").value("string data");
    ws.cell("C3").formula("=RAND()");
    ws.merge_cells("C3:C4");
    ws.freeze_panes("B2");
    wb.save("example.xlsx");
    return 0;
}
// compile with -std=c++11 -Ixlnt/include -lxlnt

Documentation

Building xlnt - From source

git clone https://github.com/xlnt-community/xlnt.git xlnt --recurse-submodules
cd xlnt
mkdir build
cd build
cmake ..
cmake --build . -j 4
cmake --install .

Building xlnt - Using vcpkg

git clone https://github.com/microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg integrate install
./vcpkg install xlnt

License

are available.

More information is available in the and in the .

You can download and install the latest xlnt version as follows:

For more information, see the .

You can download and install xlnt using the dependency manager:

The is kept up to date by Microsoft team members and community contributors. If the version is out of date, please on the vcpkg repository.

xlnt is released to the public for free under the terms of the MIT License. See for the full text of the license and the licenses of xlnt's third-party dependencies. should be distributed alongside any assemblies that use xlnt in source or compiled form.

More examples
xlnt documentation
xlnt API reference
the xlnt source code
full installation instructions
vcpkg
xlnt port in vcpkg
create an issue or pull request
LICENSE.md
LICENSE.md
ECMA 376 5th edition
the feature list
the repository's Issues page
original repo of tfussel
Issue #748
xlnt community edition
issues
PRs