乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 各位大哥大姐,怎么把excel的数据导入c++中-excel导入数据库 c,excel导入mysql数据库

各位大哥大姐,怎么把excel的数据导入c++中-excel导入数据库 c,excel导入mysql数据库

作者:乔山办公网日期:

返回目录:excel表格制作




使用VisualC++的扩展指令e79fa5e98193e59b9ee7ad94361#import:#import"C:\\ProgramFiles\\CommonFiles\\microsoftshared\\OFFICE14\\MSO.DLL"\rename("RGB","MsoRGB")\rename("SearchPath","MsoSearchPath")#import"C:\\ProgramFiles\\CommonFiles\\MicrosoftShared\\VBA\\VBA6\\VBE6EXT.OLB"#import"C:\\ProgramFiles\\MicrosoftOffice\\Office14\\EXCEL.EXE"\rename("DialogBox","ExcelDialogBox")\rename("RGB","ExcelRGB")\rename("CopyFile","ExcelCopyFile")\rename("ReplaceText","ExcelReplaceText")\exclude("IFont","IPicture")no_dual_interfaces#import指令会从指定的可执行文件,动态链接库等COM组件中导出类型库(typelib),在Debug和Release临时目录中生成对应的类型库头文件(typelibheaderfile),以供C++程序使用。如以上三条指令在编译后会生成excel.tlh,mso.lh和vbetext.olb三个头文件,可以在Debug和Release目录中找到。
简单的方法是通过ODBC来实现:
具体实现
一、 包含Excel文件操636f70797a686964616f337作类头文件
#include "CSpreadSheet.h"
二、 新建Excel文件,并写入默认数据
// 新建Excel文件名及路径,TestSheet为内部表名
CSpreadSheet SS("c:\\Test.xls", "TestSheet");

CStringArray sampleArray, testRow;

SS.BeginTransaction();

// 加入标题
sampleArray.RemoveAll();
sampleArray.Add("姓名");
sampleArray.Add("年龄");
SS.AddHeaders(sampleArray);

// 加入数据
CString strName[] = {"徐景周","徐志慧","郭徽","牛英俊","朱小鹏"};
CString strAge[] = {"27","23","28","27","26"};
for(int i = 0; i < sizeof(strName)/sizeof(CString); i++)
{
sampleArray.RemoveAll();
sampleArray.Add(strName[i]);
sampleArray.Add(strAge[i]);
SS.AddRow(sampleArray);
}

SS.Commit();

三、 读取Excel文件数据
CSpreadSheet SS("c:\\Test.xls", "TestSheet");

CStringArray Rows, Column;

//清空列表框
m_AccessList.ResetContent();
for (int i = 1; i <= SS.GetTotalRows(); i++)
{
// 读取一行
SS.ReadRow(Rows, i);
CString strContents = "";
for (int j = 1; j <= Rows.GetSize(); j++)
{
if(j == 1)
strContents = Rows.GetAt(j-1);
else
strContents = strContents + " --> " + Rows.GetAt(j-1);
}

m_AccessList.AddString(strContents);
}

EXCEL文件只能通过ODBC读取,
ODBC连接串:
Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=C:\MyExcel.xls;DefaultDir=c:\mypath;
连上以后当数zhidao据库一样访问。
不过感觉更好的办法是将数据输出为:
a,b,c,d
e,f,g,h
将结果命名为.csv,用excel可以打开的。处理后直接用C++读取也比较方便

相关阅读

关键词不能为空
极力推荐
  • excel2013行列如何转换-excel行列转换

  • excel行列转换,行列转换步骤1:打开Excel2013,新建空白文档,在第一行的单元格里输入一些内容。行列转换步骤2:选中这些单元格,右键复制。

ppt怎么做_excel表格制作_office365_word文档_365办公网