Direct reading and writing Excel files

LibXL is a library that can read and write Excel files. It doesn't require Microsoft Excel and .NET framework, combines an easy to use and powerful features. Library can be used to
  • Generate a new spreadsheet from scratch
  • Extract data from an existing spreadsheet
  • Edit an existing spreadsheet
LibXL can help your applications in exporting and extracting data to/from Excel files with minimum effort. Also it can be used as report engine. Library can be used in C, C++, C#, Delphi, Fortran and other languages. Supports Excel 97-2003 binary formats (xls) and Excel 2007/2010 xml formats (xlsx). Supports Unicode and 64-bit platforms. There are a wrapper for .NET developers and separate Mac and Linux edition. See features of the library in demo.xls or demo.xlsx files. They have been produced by LibXL.

Simple interoperate, no more Excel dependency

LibXL has C/C++ headers, Delphi unit and .NET assembly for including in your project. No OLE automation.

Customizing the look and feel

LibXL supports numerous formatting options: alignments, borders, colors, fill patterns, fonts, merging cells and so on.
alignments, borders, colors, fonts

High performance

Writing speed is about 2 100 000 cells per second for numbers and 240 000 cells per second for 8-character random strings in binary format (CPU 3.2 GHz).

Royalty-free distribution with your application

Our customers can use this library in theirs commercial applications without any fees.

Code example: generate a new spreadsheet from scratch

#include "libxl.h"
using namespace libxl;

int main() 
{
    Book* book = xlCreateBook(); // xlCreateXMLBook() for xlsx
    if(book)
    {
        Sheet* sheet = book->addSheet(L"Sheet1");
        if(sheet)
        {
            sheet->writeStr(2, 1, L"Hello, World !");
            sheet->writeNum(3, 1, 1000);
        }
        book->save(L"example.xls");
        book->release();
    } 
    return 0;
}

Previous example  Next example  Invoice example  Download now  Purchase now
If you're not satisfied with your purchase - you can make a refund in 30 days