Qt 读写 Execl 之第三方库 libxl 实战版

这篇博客介绍了如何使用LibXL库在C++、C#、Delphi和Qt中读写Excel文件。LibXL是一个无需依赖Microsoft Excel和.NET框架的库,支持创建、提取和编辑Excel文件。提供了详细的代码示例,包括在Qt环境中进行文件读取和写入的方法。此外,还提到了库的使用注意事项,如未注册时的限制。

官方资料及代码示例

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, PHP, Python, PowerBASIC, Xojo, Fortran and other languages. Supports Excel 97-2003 binary formats (xls) and Excel 2007-2016 xml formats (xlsx/xlsm). Supports Unicode and 64-bit platforms. There are a wrapper for .NET developers and separate Linux, Mac and iOS editions. See features of the library in demo.xls or demo.xlsx files.
Simple interoperate, no more Excel dependency
LibXL has C/C++ headers, Delphi unit and .NET assembly for including in your project. No OLE automation.
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 xls format (CPU 3.2 GHz).
Royalty-free distribution with your application
Our customers can use this library in their commercial applications without any additional fees.

官网资料 www.libxl.com
下载传送门:libxl 下载

Code example - C

#include "libxl.h"


int main()
{
   
   
    BookHandle book = xlCreateBook(); // xlCreateXMLBook()
    if(book) 
    {
   
   
        SheetHandle sheet = xlBookAddSheet(book, L"Sheet1");
        if(sheet) 
        {
   
   
            xlSheetWriteStr(sheet, 2, 1, L"Hello, World !", NULL);
            xlSheetWriteNum(sheet, 3, 1, 1000, NULL);
        }
        xlBookSave(book, L"example.xls");
        xlBookRelease(book);
    }
    return 0;
}

Code example - C++

#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
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

车轮滚滚向西行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值