C++ 操作Excel表格的编程实现

通过VC实现对Excel表格的操作的方法有多种,如:通过ODBC数据库实现,通过解析Excel表格文件,通过OLE/COM的实现。

一、通过ODBC实现

要点1:添加ODBC支持

在stdafx.h文件中,添加如下代码:

#include <afxdb.h>				// Excel
#include <odbcinst.h>			<span style="white-space:pre">	</span>// 使用ODBC中安装的Excel驱动

要点2:使用ODBC中的Excel驱动程序建立数据库文件,代码如下,这是《Visual C++数据库编程100例》上面的一个示例:

CDatabase m_database;
CString strDriver = L"MICROSOFT EXCEL DRIVER (*.XLS)";			// Excel驱动程序
CString strExcelFile = L"D:\\ExcelFile.xls";					// 要建立的Excel文件
CString strSQL;

TRY 
{
	// 创建存取的字符串
<span style="white-space:pre">	</span>strSQL.Format(_T("DRIVER={%s};DSN='';FIRSTROWHASNAMES=1; \
		READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s"),
	<span style="white-space:pre">	</span>strDriver, strExcelFile, strExcelFile);
	// 创建Excel文件
	if (m_database.OpenEx(strSQL, CDatabase::noOdbcDialog))
	{
		// 创建表结构
		strSQL = "CREATE TABLE Table1 (StuName TEXT, StuCourse TEXT, StuScore NUMBER)";
		m_database.ExecuteSQL(strSQL);
		// 插入数值
		strSQL = "INSERT INTO Table1 (StuName, StuCourse, StuScore) \
				VALUES ('张三', '数学', '80')";
		m_database.ExecuteSQL(strSQL);
		// 关闭数据库
		m_database.Close();
	}
}
CATCH_ALL(e)
{
<span style="white-space:pre">	</span>TRACE1("Excel驱动没有安装: %s", strDriver);
}
END_CATCH_ALL;

AfxMessageBox(_T("创建数据库成功!!"));

二、 通过 OLE/COM 实现对 Excel 表格的操作

这里讲的很详细:http://www.cnblogs.com/xianyunhe/archive/2011/09/25/2190485.html



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值