VS2017-C++-使用CSpreadSheet写EXCEL
下载类文件(CSpreadSheet)
https://www.codeproject.com/articles/1636/cspreadsheet-a-class-to-read-and-write-to-excel-an
下载并安装MFC(如果VS里面没有MFC选项的话)
搜索Visual Studio Installer,并打开
点击修改
选中MFC并下载安装
编译DLL
第一步:
创建MFC DLL项目,命名为SpreadSheet(记住这个名字,后面都是使用这个名字的)
创建好后目录如下:
第二步
修改项目中的SpreadSheet.h文件,如下
删掉构造函数,将类名改为CSpreadSheet,在类名前添 __declspec(dllexport)
第三步:
打开下载的CSpreadSheet.h
复制类的定义到MFC项目的SpreadSheet.h中
包含两个头文件<odbcinst.h>和<afxdb.h>,将类的定义复制到 virtual BOOL InitInstance(); 和 DECLARE_MESSAGE_MAP() 两行代码之间。
然后修改项目中的SpreadSheet.cpp文件
删掉构造函数 CSpreadSheetApp::CSpreadSheetApp()
删掉对象 CSpreadSheetApp theApp
将所有的CSpreadSheetApp修改为CSpreadSheet
然后打开下载的CSpreadSheet.h文件
将类实现复制到项目的SpreadSheet.cpp文件中
(CSpreadSheet.h文件的最后有一个#endif,不要将它也复制过来)
这时候会显示很多错误,先不用管它
第四步
打开项目的属性,将 配置属性>常规 中的字符集改为未设置
改完之后应该就不会显示错误了
然后
项目->右键属性->链接器->输入->附加依赖项
添加 legacy_stdio_definitions.lib
第五步
项目->右键->生成
至此,编译完成
使用DLL
创建控制台应用程序
复制文件
现在我们有两个项目,一个是SpreadSheet,用来生成DLL文件,另一个是SpreadSheetTest,用来使用CSpreadSheet这个类
在SpreadSheet项目文件目录下找到
- SpreadSheet.dll
- SpreadSheet.lib
- Resource.h
- SpreadSheet.h
- stdafx.h
- targetver.h
- stdafx.cpp
将它们复制到SpreadSheetTest项目下
在SpreadSheetTest项目中
头文件->右键->添加->现有项 添加刚刚复制的文件中的头文件
源文件->右键->添加->现有项 添加刚刚复制的文件中的源文件
修改stdafx.cpp文件(其实似乎可以不用包含stdafx.cpp文件的)
VS2017默认创建的项目的CPP文件里面好像都要包含pch.h文件,以前的VS版本应该不需要这一步吧
在SpreadSheet.h中包含stdafx.h文件
最后,配置项目的信息
配置属性>链接器>输入 附加依赖项里添加SpreadSheet.lib
配置属性>常规
MFC的使用:在共享DLL中使用MFC
字符集:未设置
至此,可以使用CSpreadSheet了
#include "pch.h"#include <iostream>#include"SpreadSheet.h"int main(){CSpreadSheet sheet("sheetfilename.xls", "sheetname");CStringArray headers, row;headers.Add("str1");headers.Add("str2");headers.Add("str3");row.Add("hello");row.Add("world");row.Add("!");sheet.BeginTransaction();//似乎必须要有headers,没有headers的话好像就没有输出文件。。。sheet.AddHeaders(headers);sheet.AddRow(row);sheet.Commit();}
CSpreadSheet的详细用法见
https://www.codeproject.com/articles/1636/cspreadsheet-a-class-to-read-and-write-to-excel-an
VS2017-C++-使用CSpreadSheet写EXCEL相关推荐
- 在VS2017中使用Xlslib对Excel进行操作
/* 2018-10-12 16:57:05 使用xlslib来对Excel文件的一些操作 VS2017编译的一些问题 (这个库只支持写) */ 详细的编译过程见 参考:https://www. ...
- pandas写excel报错ModuleNotFoundError: No module named ‘xlwt‘
pandas写excel报错ModuleNotFoundError: No module named 'xlwt' https://blog.csdn.net/weixin_36372879/arti ...
- python填写excel-Python|读、写Excel文件(三种模块三种方式)
python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别: 用xlrd和xlwt进行excel读写: 用openpyxl进行excel读写: 用pandas进行excel读写: 为了方 ...
- matlab 写excel 慢_我在12w+的Python库中,发现了让Excel快到起飞的秘密......
Amber | 作者 图片源自网络 在这篇文章里,小编向大家介绍了Excel在数据分析中的妙用.不知大家在看完后,有没有亲自动手去体验下呢?有没有遇到什么问题呢? 虽说Excel在处理小批量数据时的优 ...
- java sheet_java的poi技术写Excel的Sheet
在这之前写过关于java读,写Excel的blog如下: 然而,这篇blog主要内容是关于Excel里面怎样去写Sheet数据. 那么在Excel里面什么叫做Sheet呢?如下图红色框里面的内容就是E ...
- python的xlwt库的作用_Python:使用第三方库xlwt来写Excel
继上一篇文章使用xlrd来读Excel之后,这一篇文章就来介绍下,如何来写Excel,写Excel我们需要使用第三方库xlwt,和xlrd一样,xlrd表示read xls,xlwt表示write x ...
- python3 写入excel_Python3 读、写Excel文件的操作方法
首先,简单介绍一下EXECL中工作簿和工作表的区别: 工作簿的英文是BOOK(WORKBOOK),工作表的英文是SHEET(WORKSHEET). •一个工作簿就是一个独立的文件 •一个工作簿里面可以 ...
- 小白用python处理excel文件-Python读、写Excel文件(三种模块三种方式,小白也可学会)...
python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别: 用xlrd和xlwt进行excel读写: 用openpyxl进行excel读写: 用pandas进行excel读写: 为了方 ...
- python怎么读取excel-Python|读、写Excel文件(三种模块三种方式)
python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别: 用xlrd和xlwt进行excel读写: 用openpyxl进行excel读写: 用pandas进行excel读写: 为了方 ...
最新文章
- 属性配置文件详解(2)(十七)
- 代码生成工具Database2Sharp功能功能完善及更新
- 2.1.3 字符与字符串
- 全球及中国陶瓷脐轮行业投资份额及需求前景调研报告2021-2027年版
- windows server 2008 开机进度条闪过后重启_Windows无法启动:先用PE把桌面重要数据拷出来再说其他...
- sap 分割评估_SAP那些事-实战篇-73-受托加工的几种方案探讨
- 两年Java工作经验应该会些什么技术
- Mac OSX使用隐藏文件夹
- 计算机网络学习笔记(26. Web缓存技术)
- 前端 JavaScript 实现一个简易计算器
- python所有软件-python
- python3 input函数
- 常见打印机故障有哪些
- u深度制作win10系统安装盘教程
- opencv接受树莓派usb摄像头rtsp视频流
- 小心啦!水上有“天眼”,查你没商量!
- android 多线程 随机数,多线程安全的随机数生产函数
- python杀毒软件程序_使用Python Shells绕过杀毒软件
- 如何使用netstat命令辨别DDOS入侵
- python 第三方插件登陆——QQ