A C library for creating Excel XLSX files.
Find a file
2014-06-27 20:18:15 +01:00
dev/release Added constant_memory mode. 2014-06-26 00:49:41 +01:00
docs Prep for release 0.0.2. 2014-06-26 01:15:47 +01:00
examples Added constant_memory mode. 2014-06-26 00:49:41 +01:00
include Refactored tmpfile() usage for that it can be over-ridden. 2014-06-27 20:18:15 +01:00
lib Initial commit 2014-06-08 17:40:59 +01:00
src Refactored tmpfile() usage for that it can be over-ridden. 2014-06-27 20:18:15 +01:00
test Fix for leak when overwriting cells in constant_memory mode. 2014-06-27 19:41:16 +01:00
third_party/minizip Initial commit 2014-06-08 17:40:59 +01:00
.gitignore Added make target for coverity static analysis. 2014-06-27 01:37:01 +01:00
.indent.pro Initial work on set_column(). 2014-06-15 21:24:21 +01:00
.travis.yml TravisCI config file. 2014-06-08 20:36:40 +01:00
Changes.txt Prep for release 0.0.2. 2014-06-26 01:15:47 +01:00
LICENSE.txt Initial commit 2014-06-08 17:40:59 +01:00
Makefile Fix memory cleanup on prepare_fills() failure. 2014-06-27 02:13:44 +01:00
Readme.md Minor doc fix. 2014-06-26 01:20:30 +01:00

libxlsxwriter

A C library for creating Excel XLSX files.

demo image

The libxlsxwriter library

Libxlsxwriter is a C library that can be used to write text, numbers and formulas to multiple worksheets in an Excel 2007+ XLSX file.

It supports features such as:

  • 100% compatible Excel XLSX files
  • Full Excel formatting
  • Memory optimisation mode for writing large files
  • Source code available on GitHub
  • FreeBSD license
  • ANSI C
  • Works with GCC 4.4, 4.6, 4.7, 4.8, tcc and clang
  • Works on Linux, FreeBSD and OS X.
  • The only dependency is on zlib

Here is an example that was used to create the spreadsheet shown above:

#include "xlsxwriter.h"

int main() {

    /* Create a new workbook and add a worksheet. */
    lxw_workbook  *workbook  = new_workbook("demo.xlsx");
    lxw_worksheet *worksheet = workbook_add_worksheet(workbook, NULL);

    /* Add a format. */
    lxw_format    *format    = workbook_add_format(workbook);

    /* Set the bold property for the format */
    format_set_bold(format);

    /* Widen the first column to make the text clearer. */
    worksheet_set_column(worksheet, 0, 0, 20, NULL, NULL);

    /* Write some simple text. */
    worksheet_write_string(worksheet, 0, 0, "Hello", NULL);

    /* Text with formatting. */
    worksheet_write_string(worksheet, 1, 0, "World", format);

    /* Writer some numbers. */
    worksheet_write_number(worksheet, 2, 0, 123,     NULL);
    worksheet_write_number(worksheet, 3, 0, 123.456, NULL);

    workbook_close(workbook);

    return 0;
}

See the full documentation for the getting started guide, a tutorial, the main API documentation and examples.