C语言中如何导入excel的数据

如题:
比如说我需要输入一串不同的数据,但是我在excel中已有,怎么做到让我设计的程序可以将excel里面的数据导入进去,而不需要繁琐的输入。谢谢~!
最新回答
我萌怪我咯

2024-11-04 16:00:00

简单的方法是通过ODBC来实现:
具体实现
一、 包含Excel文件操作类
头文件

#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);
}
猫吻

2024-11-04 10:59:20

首先得把引用里将excel模块引用上
然后定义数组
将excel作为对象打开
对数组赋值
比如a(i,j)=cells(i,j)
追问
不太懂,能给点实例代码吗?