编译xlnt开源库源码,在linux平台使用c++读写excel文件
下载xnlt源码
官方网站https://tfussell.gitbooks.io/xlnt/content/
里面又编译说明手册
下载地址https://github.com/tfussell/xlnt
获取到xlnt-master.zip
下载libstudxml开源库源码
下载地址https://github.com/kamxgal/libstudxml
获取到libstudxml-master.zip
编译步骤
1 解压xlnt-master.zip,解压命令:unzip xlnt-master.zip
2 解压libstudxml-master.zip,解压命令:unzip libstudxml-master.zip
3 将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”);
版权归原作者 weixin_44871389 所有, 如有侵权,请联系我们删除。