- ·上一篇教育:excel导入中文乱码,电子表格excel文本导入乱码
- ·下一篇教育:excel2003格式丢失,电子表格excel2007格式丢失
c读取excel文件内容,电子表格如何用c语言读取excel文件里的数据
1. 如何用c语言读取excel文件里的数据
1、注意Office版本,一般office2016环境下写的东西,office2013环境下是运行不了的。(据说可以有第三方库支持,以后慢慢研究)
2、注意中断程序号一定要注销计算机,否则docx文件老是提示被占用。
3、注意try catch finally一定得加上。
4、多余符号用正则表达排除
/// <summary>
/// 获取word文件的文本内容
/// </summary>
/// <param name="docFileName"></param>
/// <returns></returns>
private string DocToExcel2(string docFileName)
{
//实例化COM
Word.ApplicationClass app = null;
Word.Document wd = null;
object nullobj = System.Reflection.Missing.Value;
object fileobj = docFileName;
string context = string.Empty;
try
{
app = new Word.ApplicationClass();
wd = app.Documents.Open(ref fileobj, ref nullobj, ref nullobj, ref nullobj,
ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj,
ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj,
ref nullobj, ref nullobj);
//取得doc文件中的文本内容
foreach (Word.Table table in wd.Tables)
{
//遍历每一行去处理
for (int k = 0; k < table.Rows.Count; k++)
{
string firstContent = table.Cell(k, 1).Range.Text;
//图上编号
Regex regTSBH1 = new Regex(@"^图上编号.+");
//Match mcMPH1 = regMPH1.Match();
if (regTSBH1.IsMatch(firstContent))
{
Regex regTSBH2 = new Regex(@"^([^\t\v\s]+).+");
Match mcTSBH2 = regTSBH2.Match(table.Cell(k, 2).Range.Text.Trim());
context += /*mcMPH1.Groups[1].Value.Trim() + "," + */mcTSBH2.Groups[1].Value.Trim() + ",";
}
//门牌号
Regex regMPH1 = new Regex(@"^门牌号.+");
//Match mcMPH1 = regMPH1.Match();
if (regMPH1.IsMatch(firstContent))
{
Regex regMPH2 = new Regex(@"^([^\t\v\s]+).+");
Match mcMPH2 = regMPH2.Match(table.Cell(k, 2).Range.Text.Trim());
context += /*mcMPH1.Groups[1].Value.Trim() + "," + */mcMPH2.Groups[1].Value.Trim() + ",";
}
//户主
Regex regHZ1 = new Regex(@"^户主.+");
//Match mcHZ1 = regHZ1.Match(table.Cell(5, 1).Range.Text.Trim());
if (regHZ1.IsMatch(firstContent))
{
Regex regHZ2 = new Regex(@"^^([^\t\v\s]+).+");
Match mcHZ2 = regHZ2.Match(table.Cell(k, 2).Range.Text.Trim());
context += /*mcHZ1.Groups[1].Value.Trim() + "," + */mcHZ2.Groups[1].Value.Trim() + ",";
}
//电话
Regex regDH1 = new Regex(@"^电话.+");
//Match mcDH1 = regDH1.Match(table.Cell(6, 1).Range.Text.Trim());
if (regDH1.IsMatch(firstContent))
{
Regex regDH2 = new Regex(@"^([^\t\v\s]+).+");
Match mcDH2 = regDH2.Match(table.Cell(k, 2).Range.Text.Trim());
context += /*mcDH1.Groups[1].Value.Trim() + "," + */mcDH2.Groups[1].Value.Trim() + ",";
}
//楼层数
Regex regLCS1 = new Regex(@"^楼层数.+");
//Match mcLCS1 = regLCS1.Match(table.Cell(7, 1).Range.Text.Trim());
if (regLCS1.IsMatch(firstContent))
{
Regex regLCS2 = new Regex(@"^([^\t\v\s]+).+");
Match mcLCS2 = regLCS2.Match(table.Cell(k, 2).Range.Text.Trim());
context += /*mcLCS1.Groups[1].Value.Trim() + "," + */mcLCS2.Groups[1].Value.Trim() + ",";
context += /*mcLCS1.Groups[1].Value.Trim() + "," + */docFileName + "\r\n";
}
//文件名,用于排错
//Regex regLCS1 = new Regex(@"^([\u4e00-\u9fa5]+).+");
//Match mcLCS1 = regLCS1.Match(table.Cell(7, 1).Range.Text.Trim());
//if((k % 7 == 0)&&(k != 0))
//{
// context += /*mcLCS1.Groups[1].Value.Trim() + "," + */docFileName + "\r\n";
//}
}
}
}
catch (Exception error)
{
MessageBox.Show("Error:" + error.Message);
}
finally
{
//关闭文件
wd.Close(ref nullobj, ref nullobj, ref nullobj);
//关闭COM
app.Quit(ref nullobj, ref nullobj, ref nullobj);
}
//返回文本内容
return context;
}
2. C编程读取excel数据文件
如何将excel表里的数据提取到word文档里的解决方法如下:
1、复制法。
即将原来的数据直接复制后,在word中进行粘贴,这样数据就直接导入到word文档中了。2、邮件合并法。在word中启用邮件合并,按向导的过程分别制作好需要插入的需要,数据源,对应关系,最后执行合并就可以了。
3、程序法。在word中插入合并域(如果是有规律的表格,可以不用这一步),然后编写vba程序,从excel文件中读取数据,然后写入到word中指定的位置。上面三个方法中,方法1简单快捷,但是每次都需要操作,如果数据不是连续的块,需要复制粘贴多次,相对来说麻烦一点。方法2,一次设置可以多次使用,但不够灵活。方法3方便可以多次重复使用,但需要有一定的编程基础,可以根据工作的实际选择一个最适合的完成这个工作。
3. c++从excel中读取数据
1.方法一:采用OleDB读取EXCEL文件: 把EXCEL文件当做一个数据源来进行数据的读取操作,实例如下: 对于EXCEL中的表即sheet([sheet1$])如果不是固定的可以使用下面的方法得到 在使用ImportRow后newds内有值,但不能更新到Excel中因为所有导入行的3.方法三:将EXCEL文件转化成CSV(逗号分隔)的文件,用文件流读取(等价就是读取一个txt文本文件)。 先引用命名空间:using System.Text;和using System.IO;
4. C语言读取Excel
1、直接打开:右击TXT文件,打开方式,选择EXCEL;
2、EXCEL中数据导入:EXCEL中,数据--获取外部数据--自文本,然后选择那个TXT文件。(如果TXT中有长数字时,这个方法比较实用,如:身份证号码,可以在导入向导的第三步选择中“文本”)
5. 如何用c语言读取excel文件里的数据格式
1、 打开一个空白电子表格,并选择【数据】标签页。
2、单击【获取外部数据】中的按纽,在弹出的【新建WEB查询】对话框中输入要导入,并单击【转到】按纽,打开;
3、 在打开的【新建WEB查询】对话框中点击黄色向右点头选择要导入的数据;
4、 数据选择换成后,箭头变成绿色的小勾,并点击【导入】按纽完成数据的导入工作。
5、 数据导入完成之后,需要设定数据的刷新频率。在任一单元格上右击鼠标,在菜单中选择【数据范围属性】;
6、 在弹出的【数据范围属性】弹出菜单中更改【刷新控件】中将默认的60分钟修改成1分钟,之后保存退出。
6. 如何用c语言读取excel文件里的数据大一
步骤1:点击开始,打开Microsoft Excel 2010。
2
步骤2:打开之后,点击数据,其他来源,来自SQL Server。
3
步骤3:打开数据链接向导之后,输入服务器名称和登陆用户名和密码。点击下一步。
步骤4:点击下一步之后,报错,不能够正常链接数据库。
步骤5:打开SQL Server 数据库代理服务器,查看代理停止工作,将其启动。
步骤6:修改服务器名称为SQL Server所在的服务器的IP地址填写入服务器名称,登陆名称和密码全部为sa。
步骤7:进入,选择数据库和表。选择PUBS,点击下一步。
步骤8:点击下一步,保持链接文件,点击完成。
步骤9:点击导入数据
步骤10
连接属性,连接名称:172.16.0.31
pubs employee,连接文件:C:\Documents and Settings\lys\My
Documents\我的数据源\172.16.0.31 pubs employee.odc 连接字符串:
Provider=SQLOLEDB.1;Persist Security Info=True;User ID=sa;Data
Source=172.16.0.31;Use Procedure for Prepare=1;Auto
Translate=True;Packet Size=4096;Workstation ID=L10-1DA235E90;Use
Encryption for Data=False;Tag with column collation when
possible=False;Initial Catalog=pubs 命令文本:"pubs"."dbo"."employee"
步骤11:点击确定,输入密码Sa。
步骤12: 我们可以看到将SQL Server数据写入了EXCEL中。
查询EXCEL中数据库:
查询数据库中数据:
SELECT *
FROM employee
7. c语言怎么读取excel文件
1、打开要提取文件列表名称的文件夹,在地址栏中按“Ctrl+C”复制路径。
2、打开Excel,点击菜单栏的“公式”选项卡,在“定义的名称”工具组中点击“定义名称”。
3、弹出“新建名称”对话框,在名称框中输入自定义名称“获取文件列表名称”,引用位置输入公式:=FILES("E:\Excel\*.*"),点击“确定”按钮。
4、选中A1单元格,在公式栏中输入公式:=IF(COUNTA(获取文件列表名称)<ROW(),"",INDEX(获取文件列表名称,ROW())),然后向下填充公式即可。
8. c中如何读取excel数据
可以通过输入公式的方法来进行显示,具体操作步骤如下:工具/原材料excel2018版、电脑。
1、打开电脑找到并点击打开excel2018新建工作表格软件。
2、打开excel工作表格以后,为了示范先在表格内编辑好有相同数据的文本内容。3、编辑好数据以后,此时选中C列的单元格在编辑栏输入:=IF(COUNTIF(B:B,A1)>0,A1,"")。
4、正确输入公式以后,此时在按“ctrl+回车键”对单元格公式进行填充即可完成显示。
9. c语言读入excel数据
简单的方案就是添加COM组件,从而实现对excel的读取和修改,一楼兄弟说的方案,很早之前的做法了,现在vc直接可以添加相关的ExcelCom组件,就可以了,有需要,可以帮你写个demo
10. 如何用c语言读取excel文件里的数据并保存
1、首先,打开媒介工具“记事本”,将word文件里需要导入的数据,复制粘贴到记事本当中,然后保存成为txt文件,本例中将txt文件取名为“1.txt”。
2、打开excel表格,点击“数据”选项卡,在“获取外部数据”当中,找到“自文本”。
3、点击“自文本”,弹出下一窗口,选择刚才保存的名为1的txt类型文件,点击“导入”。因“自文本”方式数据导入默认的只有三种文件类型txt、csv、prn,所以需要事先将word转变为txt。
4、弹出文本导入对话框,选择默认的固定宽度,意思就是数据与单元格一一对应。如果选择分隔符号,则导入的所有数据将会在一个单元格当中,接着,点击下一步。
5、设置分行线,其实就是导入数据列数的控制,单击鼠标,可以在任意位置增加分行线。双击任意分行线,就会删除。完成设定后,点击下一步。
6、设置输出数据的格式,一般不需要进行任何设置,选择常规即可,点击“完成”。
7、导入完成。
