vc++操作excel表格,附带两个小例子

vc++操作excel表格,附带两个小例子

ID:6079409

大小:77.50 KB

页数:13页

时间:2018-01-02

vc++操作excel表格,附带两个小例子_第1页
vc++操作excel表格,附带两个小例子_第2页
vc++操作excel表格,附带两个小例子_第3页
vc++操作excel表格,附带两个小例子_第4页
vc++操作excel表格,附带两个小例子_第5页
资源描述:

《vc++操作excel表格,附带两个小例子》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、C++读取Excel的XLS文件的方法有很多,但是也许就是因为方法太多,大家在选择的时候会很疑惑。由于前两天要做导表工具,比较了常用的方法,总结一下写个短文,1.OLE的方式这个大约是最常用的方式,这个方式其实启动了一个EXCEL的进程在背后读写EXCEL文件,这个方式的最大好处是什么事情都能做。包括设置EXCEL的格式,增加删除Sheet,读写单元格,等等。功能几乎是最全的,而且使用起来也不是特别的难。其基本方法都是使用导出的.h文件进行OLE操作,但是由于OLE的接口说明文档不多,想非常完美的使用她们也不是太容易,好在例子也很多。网上普遍认为OLE速度慢,EXCEL的OLE读写

2、方式也基本一样。但是读取速度可以改进,如果在读取的加载整个Sheet的Range的全部数据,而不是一个个单元格读取,那么速度还是相对不错。想想原理也很简单,整体读取减少了OLE的交互次数。OLE的写入方式一般只能几个进行比较方便,所以速度可能要快很多。我自己的亲身体会是,一个EXCEL文件,100多列的字段,如果采用一个个单元格的读取方式,1s大约3条左右的记录,如果整体读取,速度可以提高几十倍。OLE读写EXCEL方式功能很强大,读取速度还可以,但写入速度不高,当然这个方式不可能移植的,而且你必须安装了EXCEL。2.BasicEXCEL方式这是CodeProject上的一个推荐

3、开源工程了,http://www.codeproject.com/KB/office/BasicExcel.aspx作者是基于EXCEL的文件格式进行的处理。但是为什么叫BasicEXCEL呢。他不支持很多东西,公式,文件格式,表格合并等(有人说中文支持也不好),所以可以认为他只支持最基本的EXCEL表格,我自己的尝试是如果这个EXCEL文件有其他元素(公式,格式等),使用BasicEXCEL读取会失败。OLE读写EXCEL方式功能比较弱,由于是直接根据文件格式操作,读写速度都不错,你也不需要按照EXCEL,另外这个方式是可以移植的,但是有一些成本,其代码比较晦涩难懂,而且没有注释

4、,另外即使在Windows平台上,告警也很多。3.Sourceforge上的几个EXCEL库。Sourceforge上有几个开源的的EXCEL库,但是完善的不多,有的是为了PHP读写EXCEL准备的,包括libXLS,XLSlib,SmartEXCEL等。我下载了几个实验了一下,在Widonws都没有编译成功。也罢了。4.ODBC的方式这个亲身没有尝试过,但是按照原理,应该只能读写。速度吗,ODBC的速度本来就是出名的慢了。http://www.vckbase.com/document/viewdoc/?id=4215.ADO的方式ADO的方式听说应该就是使用OLEDB的方式。和O

5、LE的方式应该没有本质区别。我看了看例子也和OLE很像6.LibXLLibXL是一个收费的EXCEL的库。http://www.libxl.com/按照他的说明,他可以不依赖EXCEL读取XLS文件。包括设置格式等。看例子操作应该很简单。但是是否可以移植到Linux平台,我估计难度也不小。呵呵。由于要收费,没有法子测试了。7.网上一些号称不用OLE读取EXCEL例子初步看了一下,这个应该是网上探索EXCEL格式文档的例子。可以实际操作的方式不强。一、直接通过ODBC读、写Excel表格文件    首先,我们要明白的是,VC是通过ODBC来访问Excel表格的,也就是说,VC将Exc

6、el表格,当作数据库来处理。当然了,也可以通过读以tab键隔开的文件来处理这样的文件,但是,我还是更加愿意用读取数据库的方式来访问Excel表格。第二,既然是数据库,那么,就需要建立一个与该库对应的dsn,这个,而且,在建立dsn之前,首先要确定,已经安装了Excel的驱动。第三,要访问数据库中的表格,就要先打开该表格,如此,就需要一个与之对应的RecordSet想要通过ODBC直接读、写Excel表格文件,首先,应确保ODBC中已安装有Excel表格文件的驱动"MICROSOFT EXCEL DRIVER (*.XLS)"。然后,可根据下面步骤进行:1.    在StdAfx.h

7、文件中加入:#include  #include 2.    通过ODBC直接创建Excel文件(暂定文件名:Demo.xls)//创建并写入Excel文件void CRWExcel::WriteToExcel(){  CDatabase database;  CString sDriver = "MICROSOFT EXCEL DRIVER (*.XLS)"; // Excel安装驱动  CString sExcelFile

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。