Visual Studio2019配置xlnt库
以为是很简单的配置,没想到还是需要花一段时间才能运行。
在win32平台下测试已通过。
配置步骤:
1.下载源码
//使用git工具下载源码
git clone https://github.com/tfussell/xlnt.git
/* 然后再下载 libstudxml库(这是上面要用的库,使用git不知道为什么没下载下来,
需要手动下载,然后放到上面源码中指定的目录:\\third-party\\llibstudxml\\)
*/
// 没这一步的话 cmake无法生成VS项目!!
git clone https://github.com/kamxgal/libstudxml.git
2.使用 CMAKE(GUI) 生成 VS 项目(网上的教程)
2.1. 打开Cmake(Gui)
在where is souce codedir 放xlnt源代码地址 ( F:\CODE\CPPCODE\xlnt-maste )
在在where build the ... 放你 新建的 build 文件夹地址(F:/CODE/CPPCODE/xlnt-master/build)
2.2 点击左下角 config
选中你的visual Studio 版本 下拉选中电脑版本的vs (默认是32位的 64位visual Stdio需要自己选择)
2.3 设置完成之后点击 Generate
遇到有问题可以看下文章 遇到的坑,有相同的就解决了。不同的需要自己去网上找
2.4 点击openProject
3. VS项目生成静态和动态库
PS: 项目在visual stdudio 本地调试器生成解决方案
会弹窗跳出警告 无法启动程序 请无视
在 xlnt-master\include中得到头文件文件夹
在 xlnt-master\build\source\Debug中得到动态链接库
动态链接库中有 xlntd.dll xlntd.lib 这是需要用到的东西
如果没有xlntd.dll就是没编译好 请重试
4. 集成到项目中
由于我是MFC项目,正常应该和C++/C是一样的配置。- 项目右键点击,然后选择最下方的属性按钮,打开配置的窗口
- 1. 配置头文件路径的配置
拷贝 \xlnt\xlnt\include
- 2. 第三方库库文件路径
配置属性-VC++目录-库目录
拷贝 xlnt\xlnt\build\source\Release
- 3. 引用库名称的配置
配置属性-连接器-依赖-附加依赖项
填入 xlnt.lib
// 如果提示缺xlnt.dll的话 将找不到的dl文件放在与源代码同一级别的目录下。
5. 测试代码,生成xlsx文件就代表能使用了。
try {
CString FileName = _T("\\Spreadsheet.xlsx");
// 创建工作簿和工作表
xlnt::workbook wb;
xlnt::worksheet ws = wb.active_sheet();
// 设置单元格的值和公式
ws.cell("A1").value(5);
ws.cell("B2").value("string data");
// 这里添加捕获异常
ws.cell("C3").formula("=RAND()");
// 合并单元格和冻结窗格
ws.merge_cells("C3:C4");
ws.freeze_panes("B2");
wb.save(FileName.GetString());
}
catch (const std::exception& e) {
std::cerr << "Exception: " << e.what() << std::endl;
}
遇到的坑:
1.Cmake 第二步要 generate 报的错误(第一步有解决方案):
2.xlnt保存xlsx格式文件 提示 _Parent_proxy:读写冲突:
要跟项目同一个配置,32位还是64位,Release和Debug都要一样。 不然可以运行程序但是执行代码的时候会出错!!!
浙公网安备 33010602011771号