当前位置:网站首页>Xlslib use
Xlslib use
2022-04-23 18:52:00 【Brick Porter】
xlslib It's open source and free xls Build a library . No installation required office.
compile :
stay windows Compiling under is relatively simple , Navigate directly to the directory xlslib\build Find the corresponding VS edition , If you use the new version, you can use the upgrade of the old version . Of course, some project documents have some holes , The corresponding modification of compilation , There is also the wrong configuration , such as 2012 My directory is still 2010 The file cannot be found later . These should be carefully revised . Besides, it doesn't use itself def Nor is it defined in the header file __declspec(dllexport) Export and so on , So only generate dll It's not lib Of documents . It provides a createDLL Project , After looking at it, it seems that it is generated during project generation map file , And then through map file , Generate DEF file , Call again link.exe Generate dll and lib.
Easy to use ,lib And header files are adjusted according to the implementation location . Switching tables does not seem to support switching through table names , Of course, I tried ,excel You can't have a table name with the same name in , So build your own map To save the table name and the corresponding idx That's it . Besides dump Wide characters are not supported , Just add one by yourself , This can avoid the problem of saving Chinese file names on some foreign language systems .
# define CPP_BRIDGE_XLS
#include "..\xlslibsrc\xlslib.h"
#ifdef WIN64
#pragma comment(lib,"../lib/xlslib_dll_x64.lib")
#else
#pragma comment(lib,"../lib/xlslib_dll.lib")
#endif // X64
class CXlsLib
{
private:
// Cell
//cell_t* cell;
//font_t* _font;
//xf_t* xf;
// //pWS->defaultColwidth(25); // Set the default column width
//pWS->defaultRowHeight(30); // Set the default row height
//_font = pWB.font("Arial");
//_font->SetBoldStyle(BOLDNESS_BOLD); // Set bold font
//_font->SetHeight(220); // Set font size 11
//xf = pWB.xformat();
//xf->SetFont(_font);
//xf->SetFillBGColor(CLR_WHITE);
//xf->SetFillFGColor(CLR_RED);
// workbook
workbook m_pWB;
// Worksheet for the current operation
worksheet* m_pWS=NULL;
public:
// Get the workbooks
workbook& GetWorkBook()
{
return m_pWB;
}
// Get current worksheet
worksheet* GetCurWorksheet()
{
return m_pWS;
}
// Create a new worksheet
worksheet* CreateWorkSheet(const std::wstring& SheetName)
{
m_pWS = m_pWB.sheet(SheetName);
if (m_pWS)
{
m_pWS->MakeActive();
return m_pWS;
}
return NULL;
}
// Switch tables
worksheet* SelWordSheet(unsigned16_t SheetIdx)
{
worksheet* _pWS = m_pWB.GetSheet(SheetIdx);
if (_pWS)
{
_pWS->MakeActive();
m_pWS = _pWS;
}
return _pWS;
}
// from 0 Start
cell_t* InsData(int row, int col, const std::wstring str)
{
if (m_pWS)
return m_pWS->label(row, col, str);
return NULL;
}
// from 0 Start
cell_t* InsData(int row, int col, double num)
{
if (m_pWS)
return m_pWS->number(row, col, num);
return NULL;
}
// Save as xls file
int SaveExcelFile(const std::wstring& FileName)
{
return m_pWB.Dump(FileName);
}
};
版权声明
本文为[Brick Porter]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204210603257392.html
边栏推荐
- ESP32 LVGL8. 1 - anim animation (anim 16)
- Ctfshow - web362 (ssti)
- Machine learning theory (7): kernel function kernels -- a way to help SVM realize nonlinear decision boundary
- 解决:cnpm : 无法加载文件 ...\cnpm.ps1,因为在此系统上禁止运行脚本
- mysql_linux版本的下載及安裝詳解
- Redis common interview questions
- Excel intercept text
- ctfshow-web361(SSTI)
- 【数学建模】—— 层次分析法(AHP)
- 七、DOM(下) - 章节课后练习题及答案
猜你喜欢

os_authent_prefix

Setting up keil environment of GD single chip microcomputer

MySQL Téléchargement et installation de la version Linux

ctfshow-web362(SSTI)

机器学习理论之(8):模型集成 Ensemble Learning

ctfshow-web362(SSTI)

【数学建模】—— 层次分析法(AHP)

7、 DOM (Part 2) - chapter after class exercises and answers

CANopen STM32 transplantation

视频边框背景如何虚化,简单操作几步实现
随机推荐
实战业务优化方案总结---主目录---持续更新
Use of content provider
使用 bitnami/postgresql-repmgr 镜像快速设置 PostgreSQL HA
使用 bitnami/postgresql-repmgr 镜像快速设置 PostgreSQL HA
Methods of nested recycleview to solve sliding conflict and incomplete item display
MySQL statement
QT curve / oscilloscope customplot control
Summary of actual business optimization scheme - main directory - continuous update
从技术体系到商业洞察,中小研发团队架构实践之收尾篇
Click the input box to pop up the keyboard layout and move up
WebView saves the last browsing location
Can filter
Deeply understand what new and make in golang are and what are the differences?
Go 语言 GUI 框架 fyne 中文乱码或者不显示的问题
回路-通路
Chondroitin sulfate in vitreous
Resolution: cnpm: unable to load file \cnpm. PS1, because running scripts is prohibited on this system
Esp32 (UART ecoh) - serial port echo worm learning (2)
Nacos cluster construction and MySQL persistence configuration
STM32: LCD显示