基于excel9.h的excel处理
基于excel9.h的excel处理;
#include "excel9.h"
#include <iostream>
using namespace std;
class excel_lwn
{
public:
excel_lwn()
{
CoInitialize(NULL);
if(!app.CreateDispatch(_T("Excel.Application"),NULL)) { /*"启动Excel服务器失败!" */ }
f_result = NULL;
flag=-;
}
~excel_lwn()
{
book.SetSaved(TRUE);
books.Close();
app.Quit();
} void OpenTable(CString excelName, int table=)
{
books=app.GetWorkbooks();
COleVariant covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
lpDisp = books.Open(excelName,
covOptional, covOptional, covOptional, covOptional,
covOptional, covOptional, covOptional, covOptional,
covOptional, covOptional, covOptional, covOptional);
book.AttachDispatch( lpDisp );
sheets=book.GetSheets();
sheet=sheets.GetItem(COleVariant((short)table));
}
void GetValue(int i=,int lie=)
{
char c_lie[];
c_lie[] =+ lie;
c_lie[]= '\0';
cs_lie=c_lie; char c_hang[];
itoa(i,c_hang, );
cs_hang=c_hang; Range range=sheet.GetRange(COleVariant(cs_lie+cs_hang),COleVariant(cs_lie+cs_hang));
COleVariant rValue= range.GetValue();
isSuccess = rValue.vt;
if (rValue.vt ==VT_BSTR )
{
//MessageBox(NULL,CString(rValue.bstrVal),TEXT("你好"),MB_ICONINFORMATION|MB_YESNO);
cs_result = rValue.bstrVal;
flag=;
}
if (rValue.vt ==VT_R8 )
{
//cout<<rValue.dblVal<<endl;
f_result = rValue.dblVal;
i_result = f_result;
char temp[];
itoa(f_result,temp,);
cs_result = temp;
flag = ;
}
}
private:
_Application app;
Workbooks books;
_Workbook book;
Worksheets sheets;
_Worksheet sheet;
LPDISPATCH lpDisp;
CString cs_lie;
CString cs_hang;
public:
CString cs_result;
double f_result;
int i_result;
int flag;// 0表示是数字,1表示是字符串
bool isSuccess;
}; int main(int argc, char *argv[])
{
//OnButton2();
excel_lwn my;
my.OpenTable("C:\\d.xlsx",);
my.GetValue(,);
cout<<my.i_result<<endl;
my.GetValue(,);
cout<<my.f_result<<endl;
return true;
}
相关文件:http://pan.baidu.com/s/1hqfBn72
c#中关于excel的处理: http://www.codeproject.com/Tips/813187/Csharp-Read-and-write-Excel-xls-and-xlsx-files-con
基于excel9.h的excel处理的更多相关文章
- 在Windows下使用Dev-C++开发基于pthread.h的多线程程序【转】
在Windows下使用Dev-C++开发基于pthread.h的多线程程序[转] 在Windows下使用Dev-C++开发基于pthread.h的多线程程序 文章分类:C++编程 ...
- Windows下使用Dev-C++开发基于pthread.h的多线程程序
一.下载Windows版本的pthread 目前最新版本是:pthreads-w32-2-9-1-release.zip. 二.解压pthread到指定目录 我选择的目录是:E:\DEV-C ...
- C#基于Office组件操作Excel
1. 内容简介 实现C#与Excel文件的交互操作,实现以下功能: a) DataTable 导出到 Excel文件 b) Model数据实体导出到 Excel文件[List&l ...
- 在Linux 应用层 基于i2c-dev.h 实现i2c读写
/* i2c-dev.h - i2c-bus driver, char device interface Copyright (C) 1995-97 Simon G. Vogl Copyright ( ...
- 基于phpExcel写的excel类
<?php /* * 类的功能 * 传入二位数组导出excel * 传入excel 导出二位数组 * @author mrwu */ require('PHPExcel.php'); requi ...
- 一个基于POI的通用excel导入导出工具类的简单实现及使用方法
前言: 最近PM来了一个需求,简单来说就是在录入数据时一条一条插入到系统显得非常麻烦,让我实现一个直接通过excel导入的方法一次性录入所有数据.网上关于excel导入导出的例子很多,但大多相互借鉴. ...
- 基于asp.net的excel导入导出
新建aspx文件.代码大概如下: <!--导入Excel文件--> <table width="99%" border="0" align=& ...
- 基于phpExcel写的excel类(导出为Excel)
<?php /* * 类的功能 * 传入二位数组导出excel * 传入excel 导出二位数组 * @author mrwu */ require('PHPExcel.php'); requi ...
- 基于注解的读取excel的工具包
easyexcel-wraper easyexcel-wraper是什么? 一个方便读取excel内容,且可以使用注解进行内容验证的包装工具 easyexcel-wraper有哪些功能? 在easye ...
随机推荐
- n个数的最大公约、最小公倍数
#include <cstdio> #include <cstring> using namespace std; #define N 1010 //两个数的最大公约数和最小公 ...
- cocos2d-x创建工程批处理
cd /d D:\cocos2d-x-2.2.2\cocos2d-x-2.2.2\tools\project-creator create_project.py -project %1 -packag ...
- CF 13E Holes 【块状链表】
题目描述: 一条直线上n个点,每个点有个“弹力”,可以把当前位置x上面的ball弹到x+a[x]上面. 两种操作 0. 修改a处的弹力值,编程b 1. 询问a点的ball经过多少次能跳出n个点外(就是 ...
- HTML5简单入门系列(六)
前言 之前几篇已经将HTML5的主要新增元素和特性简单介绍完毕,LZ一直在犹豫还要不要把其他元素也写出来,因为其实没什么东西可以写,就是自己用到时看一下就行.不过为了入门系列的完整,犹豫再三,还是决定 ...
- collections——高性能容器数据类型
由于最近对机器学习算法感兴趣,一直知道python有一个包collections封装了一些比dict,list之类高级点的类,所以抽空研究下,为接下来的工作准备. 主要参考是https://docs. ...
- MFC界面开发(QQ透明皮肤:多层算法,一键适配各种背景 )
http://blog.csdn.net/kent19900125/article/category/1368203/3 QQ透明皮肤:多层算法,一键适配各种背景 . http://blog.csdn ...
- Linux系统编程(24)——信号的生命周期
信号生命周期为从信号发送到信号处理函数的执行完毕. 对于一个完整的信号生命周期(从信号发送到相应的处理函数执行完毕)来说,可以分为三个重要的阶段,这三个阶段由四个重要事件来刻画:信号诞生:信号在进程中 ...
- 《MATLAB数据分析与挖掘实战》赠书活动
<MATLAB数据分析与挖掘实战>是泰迪科技在数据挖掘领域探索10余年经验总结与华南师大.韩山师院.广东工大.广技师 等高校资深讲师联合倾力打造的巅峰之作.全书以实践和实用为宗旨,深度 ...
- LeeCode-Rotate Array
Rotate an array of n elements to the right by k steps. For example, with n = 7 and k = 3, the array ...
- Cuckoo hash算法分析
一 基本思想: cuckoo hash是一种解决hash冲突的方法,其目的是使用简单的hash 函数来提高hash table的利用率,同时保证O(1)的查询时间 基本思想是使用2个hash函数来处理 ...