怎么利用c语言创建excel文件

作者&投稿:军逸 (若有异议请与网页底部的电邮联系)
利用c语言怎么实现excel电子表格里面数据的提取~

简单的方法是通过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);
}

你好,
EXCEL支持.csv(comma
seperated
value)
文件格式的读入,也就是“用逗号分隔的值”的形式。例如你有一组数据:
/*
姓名 年龄 班级
张三 22 12
... ... ...
*/它的CSV表示格式就是:
/*
姓名,年龄,班级
张三,22,12
...,...,...
*/EXCEL支持CSV格式,它可以打开CSV文件,并且CSV文件中的一个“,”对应的就是EXCEL表格中的一列的分界线。所以,你的C语言输出成.CSV格式的文件就可以直接被EXCEL读入了。
例如:
#include
struct MyData {
char *name; //姓名
int age; //年龄
int grade; //班级
};
int write_to_csv(int count, struct MyData *data)
{
FILE *f = fopen("Mydata.csv", "w"); //写Mydata到Mydata.csv
if (f == NULL) return -1;
for (int i=0; i<count; i++) //这里的count是你的MyData的个数
{
//fprintf的用法和printf一致,只是它是写入文件的。
fprintf(f,"%d,%s,%f
",data[i].name, data[i].age, data[i].grade);
}
fclose(f);
return 0;
}谢谢,望采纳。

如果数据简单的话,可以使用CSV(逗号分隔值)格式的文件。CSV格式的文件可以用Office
Excel
打开。比如有要保存的一张表格是这样的:
----------------表格开始-------------------
编号
姓名
性别
1
A

2
B

3
C

---------------表格结束--------------------
那么在保存CSV文件里面数据格式是这样的:
----------------内容开始----------------
编号,姓名,性别
1,
A,

2,
B,

3,
C,

----------------内容结束----------------
用Excel打开是这样的:
下面是示例程序:
#include
struct
Student
{
int
id;
char
name[10];
char
gender[3];
};
int
main(int
argc,
char
*argv[])
{
//
在程序所在目录下面,可以看见一个名为
student.csv
的文件
FILE
*
file=fopen("student.csv","w...
}
}
fclose(file);;),%s\
struct
Student
studens[]=
{
{1,studens[i],",

2.h>
};:
----------------内容开始----------------
编号,
A;%s%,%s,
B;),"
int
main(int
argc,"};
int
studensAmount=sizeof(studens)/,",%s\;
return
0;%d%,studens[i];n",studens[i];男"
在程序所在目录下面;B"男"i<,".csv
的文件
FILE
*
file=fopen(",性别
1,
C;,

----------------内容结束----------------
用Excel打开是这样的;student;性别"姓名"w"studensAmount,姓名;,"
struct
Student
{
int
id;},

3;/stdio,"女"
char
name[10],".gender);
for(i=0;C".id,可以使用CSV(逗号分隔值)格式的文件;
int
i;sizeof(struct
Student),
char
*argv[])
{
/,可以看见一个名为
student,
};编号":
#include
<;n",
{2。比如有要保存的一张表格是这样的,".name:
下面是示例程序。CSV格式的文件可以用Office
Excel
打开;A"},
{3,":
----------------表格开始-------------------
编号
姓名
性别
1
A

2
B

3
C

---------------表格结束--------------------
那么在保存CSV文件里面数据格式是这样的;,",%s;
char
gender[3].csv"i++)
{
fprintf(file,"
if(file)
{
fprintf(file如果数据简单的话

如何将C语言的输出倒入Excel工作表
答:可以先用C语言格式化输出为EXCEL可以导入的文本文件,再使用EXCEL手工导入。具体导入方法可参阅《往Excel中导入TXT文本数据的三种方法》:http://tech.sina.com.cn/s/2006-05-12/1042934532.shtml这种方法最简单, 但自动化程度低, 不能集成到你的C程序中去.如果用C/C++创建EXCEL, 可以使用ADO或者ODBC.如果用C++/OD...

c语言能对EXCEL数据进行操作吗
答:可以啊,你要明白任何语言,程序包括操作系统,都是在C语言的基础上开发的。include <stdio.h> void writeExcel(void ) { FILE *fp = NULL; int t; char ch; fp = fopen("F:\\test.xls", "w"); for (int i = 0; i < 10; i++) { printf("please input:...

问一下C语言编程实现员工考勤考查的思路
答:里面说的非常详细了,还包括一些例程。不过没C语言的,但最终的开发过程大同小异。=== 如果lz只是为了存取数据,用Excel只是可选手段的话可以用考虑其他方式,比如用数据库,简单点的像Access就可以,SQL Server等有点大材小用。Access的我也有以前写的程序,不过是C++的。另外我这几天刚写了个查询MyS...

C语言关于Excel列标的转换,求大佬帮我分析一下代码,过不了
答:include<string.h> include<stdio.h> include<math.h> int main(){ int n;scanf("%d",&n);int i,j,len=0;char a[101];long long int d[101];for (i=0;i<n; i++){ long long int num=0;scanf("%s",a);len = strlen(a);for (j=0; j<len; j++){ num+=int(a[j]...

怎样用c语言读取excel文件
答:简单的方法是通过ODBC来实现: 具体实现 一、 包含Excel文件操作类头文件 #include "CSpreadSheet.h" 二、 新建Excel文件,并写入默认数据 // 新建Excel文件名及路径,TestSheet为内部表名 CSpreadSheet SS("c:\\Test.xls", "

如何将excel中的数据导入到c语言中的数组中?
答:二、 新建Excel文件,并写入默认数据// 新建Excel文件名及路径,TestSheet为内部表名CSpreadSheet SS("c:\\Test.xls", "TestSheet");CStringArray sampleArray, testRow;SS.BeginTransaction();// 加入标题sampleArray.RemoveAll();sampleArray.Add("姓名");sampleArray.Add("年龄");SS.AddHeaders(sampleArray);/...

c语言读写excell
答:比如aaabbb,你想写成2列aaa bbb的形式,只需要在aaa后加一个tab符 \t。

如何使用C语言选择性读入txt数据并写入excel
答:先输入信息,然后利用排序子函数进行排序从而实现插;void modify();建信息;利用for循环把要删除的结构体变量用后面的覆盖,且从此处以后后面的变量覆盖前面的,以此完成删除任务;void writetofile();按编号删除信息;用if判断文件是否创建成功,利用for循环实现信息保存 void readfile();按编号查询信息;...

excel表中如何插入复选框?!
答:复选框是一种可同时选中多项的基础控件,也是基于计算机语言(C语言、java语言、CSS+HTML超文本标记语言)的编程代码框架,一般控制的方法是按住ctrl键,然后鼠标左击进行点选操作来完成复选多个目标。Excel中建立复选框步骤:1、打开Excel表格,点击左上角的倒三角图标。2、然后选择其他命令。3、进入Excel...

C语言函数和EXCEL函数
答:首先声明,C语言和Excel完全不是一回事情:C语言是编程(尤其针对硬件有效的),Excel是办公中的应用软件(支持VBS或者宏编程)。你所看到的只是重名现象而已。不可当真,不过你不怕混淆可以方便你同时学习的时候记忆。printf:打印输出到屏幕。scanf:从键盘输入。getchar:获得一个字符。