• 编译xlnt开源库源码, 使用c++读写excel文件


    编译xlnt开源库源码,在linux平台使用c++读写excel文件
    下载xnlt源码
    官方网站https://tfussell.gitbooks.io/xlnt/content/
    下载地址https://github.com/tfussell/xlnt
    下载libstudxml开源库源码
    下载地址https://github.com/kamxgal/libstudxml

    下载xnlt源码

    官方网站https://tfussell.gitbooks.io/xlnt/content/

    下载地址https://github.com/tfussell/xlnt
    获取到xlnt-master.zip

    下载libstudxml开源库源码
    下载地址https://github.com/kamxgal/libstudxml
    获取到libstudxml-master.zip

    编译步骤

    将libstudxml-master/libstudxml拷贝到xlnt-master/third-party/libstudxml

    注意:是这个xlnt-master/third-party/libstudxml目录下,拷贝的结果是xlnt-master/third-party/libstudxml/libstudxml

    4 在xlnt-master目录下创建build目录,创建命令:

    mkdir build
    5 在切换到build目录下,执行命令:

    cd build
    6 cmake -D STATIC=ON … (指定生成的为静态库)
    7 cmake --build .
    xlnt-master/build/source/libxlnt.a是生成的静态库,对应的头文件在xlnt-master/include/里面

    注意: xlnt::workbook类的load(std::string path)在读取excel文件时,如果excel文件不存在直接抛出异常,程序退出。可能需要先用文件流先判断文件时候存在,demo如下,dest_filename为目标excel文件路径。

    std::ifstream file_stream;
    file_stream.open(dest_filename, std::ios::binary);
    if (!file_stream.good())
    {
    std::clog << “ERROR ***************************************************” << std::endl;
    return -1;
    }
    xlnt::workbook wb_read;
    wb_read.load(“dest_filename”);
    ————————————————

        

    3:cmake xlnt  ,命令如下

    cd xlnt-master

    mkdir build

    cd build

    二、构建、编译、运行

    cmake -G “Visual Studio 12 2013 Win64” ..

    cmake -G “Visual Studio 12 2013” ..

    cmake ..

    4.用vs打开xlnt-master\build\xlnt_all.sln,生成解决方案

    5.在 xlnt-master\include中得到头文件,在xlnt-master\build\source\Debug中得到动态链接库

    编译库文件

    进入build文件夹,打开sln文件

    选择模式Debug或者Release,点击运行。

    输出显示到已生成dll文件,即生成完毕。

    生成库的路径如下。

  • 相关阅读:
    AsynchronousFileChannel写数据
    centos7离线安装docker,docker-compose。
    C++ Primer Plus第八章笔记
    基于go-zero的rpc服务示例
    数据安全法vs国家标准,40+标准助力数据安全保驾护航~(附整理文档及pdf下载)
    浅谈智能型电动机控制器在斯里兰卡电厂中的应用
    如何创建专栏
    7 月最新编程排行榜:万年不变的前三,啥时候能是头?
    数据分析综述
    Pandas.read_csv()函数及全部参数使用方法一文详解+实例代码
  • 原文地址:https://blog.csdn.net/jiaowenjie/article/details/139771162