针对Excel表格文件操作的编程实现

简介

通过本文及配套示例源码你可以更加灵活的控制Excel表格文件,其中包括创建新Excel文件、写入表格数据、读取表格数据(包括对原建Excel文件自已手工添加的行、列数据的准确读取),删除已有Excel表格,对表格中指定行、列、单元格进行查询、插入、替换等操作,同时还可以将生成的Excel文件转换为按指定分隔符分隔的其它文本格式的文件。下面是把此方法用VC6编写的示例程序运行效果:

基本思路

基础实现方法同上篇文章《直接通过ODBC读、写Excel表格文件》相同,都是通过ODBC来把Excel表格文件当成数据库文件来进行读、写等操作,所以在Excel表格文件中写入的行头名必须是唯一的(不要重名,相当于数据库中的ID值)。本文中对Excel文件的操作都被封装进一个类CSpreadSheet中,通过它我们可以非常简便的实现各种Excel表格数据操作,并且可以对该类进行扩充来满足自己的需求。

具体实现

一、 包含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-12-03 07:17:35

针对Excel表格文件操作的编程实现的相关文章

直接通过ODBC读写Excel表格文件

想要通过ODBC直接读.写Excel表格文件,首先,应确保ODBC中已安装有Excel表格文件的驱动"MICROSOFT EXCEL DRIVER (*.XLS)".然后,可根据下面步骤进行: 1. 在StdAfx.h文件中加入: #include <afxdb.h>#include <odbcinst.h> 2. 通过ODBC直接创建Excel文件并在表中插入数据(暂定文件名:Demo.xls) //创建并写入Excel文件void CRWExcel::Wri

【PHP】PHP使用PHPExcel生成Excel表格文件(附带随机生成英文名函数)

[PHP]PHP使用PHPExcel生成Excel表格文件(附带随机生成英文名函数) 前言 由于业务需要,我们需要从业务中汇总数据,并生成Excel文件. 思路是这样的 PHP要导出Excel表格文件->找一个好用的第三方库吧->在Composer的Packages里找一个吧->PHPExcel这么多收藏,就它了! PHPExcel 概述 PHPExcel is a library written in pure PHP and providing a set of classes th

怎样用Beyond Compare比较两个excel表格文件差异

  首先安装好Beyond Compare,选中要比较的表格文件,右键,选择 比较 直接就能看到想要的比较结果 在上面筛选处点选不等号,查看差异部分,OK

mysql快速导出excel表格文件的方法

一.sql命令 命令:  代码如下 复制代码 SELECT * INTO OUTFILE 'c:/test.xls' FROM tb1 WHERE 1 ORDER BY id DESC  LIMIT 0, 50; 二.使用phpmyadmin导出 1.我们找到要导出的表点击进入 2.然后我们点击导入之后在导出界面点击"自定义 - 显示所有可用的选项 " 3.然后在"格式:"处选择导出csv/excel即可.

Java实现操作excel表格_java

最近老师布置了个任务,用Java对excel后缀名为xlsx的文件进行简单的增,删,改,查操作:虽说是个简单的程序,可作为刚接触的我来说还是有些磕磕碰碰.不过好在还是完成了,进行一个简单的总结.   首先导入了一个poi.jar 网上有很多这个资源可以下载 XSSFSheet sheet=null; XSSFWorkbook book=null; 一:查  (查找本地指定位置的excel表格,在控制台输出) public void print_excel(){ //获取excel表格的行数 in

PowerPoint中轻松插入Excel表格

制作演示文稿少不了要用到表格,而表格我们习惯用Excel制作,将制作好的Excel表格插入到幻灯片中就可以了: 定位到相应的幻灯片中,执行"插入→对象"命令,打开"插入对象"对话框(如图),选中"由文件创建"选项,通过其中的"浏览"按钮,选中需要插入的Excel表格文件,确定返回,将表格插入其中,调整一下大小即可. 注意: ①在Excel中将表格的网格线隐藏起来,使插入的表格观感效果更好. ②如果选中"插入对象&qu

在PPT中插入Excel表格

  PowerPoint2003是微软公司提供的一款幻灯片制作软件,该软件一般与投影仪来配合使用,不管是在演讲.上课.开会.培训等宣传上,这都是必不可少的工具和设备.当我们需要在PPT里添加表格时,我们就先要把Excel制作好,然后将其插入到幻灯片中,具体怎么操作呢?就让Word联盟为大家带来分享. 动画演示 ①单击菜单栏中的"插入"-"对象"命令,打开"插入对象"对话框. ② 选中"由文件创建"选项,然后单击"浏览

JSP针对XML文件操作技巧实例分析_JSP编程

本文实例讲述了JSP针对XML文件操作技巧.分享给大家供大家参考,具体如下: XML(Extensible Markup   Language)可扩展标记语言,这个基础知识在早些已经学习过.而这篇教程为什么把它放在J2EE下边呢,因为他也是J2EE的13规范之一,虽然XML是W3C万维网组织联盟指定的,并做了规范,所以说也是一种规范,我们也必须按照规范来,和JDBC,Servlet,Jsp,Ejb等一样的. 前边的文章已经介绍了XML的一些基础知识,主要是用来存储,传输数据的,但是这些数据我们怎

excel表格已经打开了,用VC怎么操作已经打开的excel文件呢?

问题描述 excel表格已经打开了,我想用VC去操作excel,比如说想在A1单元格填上1.我看网上的都是用createdispatch("excel.application")这样去打开一个excel表格,但对于已经打开的表格没有介绍.关键就是怎么找到那个打开的表格,通过句柄或者文件的名字,注意是VC,不是VB.总之一句话.已经打开的EXCEL表格,用VC怎么去操作.谁知道呀,最好能给个例子.谢谢呀! 解决方案 解决方案二:http://bbs.csdn.net/topics/390