文档章节

谨慎!!!BasicExcel开源库操作Excel

t
 tigerBin
发布于 2017/05/17 21:39
字数 348
阅读 1144
收藏 1

BasicExcel开源库地址: https://www.codeproject.com/Articles/13852/BasicExcel-A-Class-to-Read-and-Write-to-Microsoft

原文有相应的接口说明和样例程序,容易上手

从Excel文件读取数据:

BasicExcel excel;
excel.Load("data.xls"); //必须是 xls 类型的Excel文件,不能读取 xlsx 文件
BasicExcelWorksheet *sheet = excel.GetWorksheet("Sheet1"); //获取当前文件的指定名字的工作簿
if (sheet)
{
    size_t maxRows = sheet->GetTotalRows(); //获取行数
    size_t maxCols = sheet->GetTotalCols(); //获取列数
    int intVal = sheet->Cell(x,y)->GetInteger(); //获取当前工作簿的 x 行 y 列的 int 值
    string strVal = sheet->Cell(x,y)->GetString();   //获取当前工作簿的 x 行 y 列的 string 值
    sheet->Cell(x,y)->Get(...); //获取某种类型的值,根据输入参数类型决定
} 

写入数据到Excel文件:

	BasicExcel excel;
	excel.Load(fileName);
	BasicExcelWorksheet *sheet = excel.GetWorksheet("Users");
	
	/* Write to file */
	if ( sheet )
	{
		size_t idx = sheet->GetTotalRows(); //获取行数

		sheet->Cell(idx, 0)->SetString(usr.Id);  //写入数据到指定单元格
		sheet->Cell(idx, 1)->SetString(usr.NickName); // SetString(), SetDouble() ...
		sheet->Cell(idx, 2)->SetString(usr.Pwd);
	}
	/* save data */
	excel.Save();  //一定要记得保存,不然以上操作无效!!!

如果只是写入一条数据,那么上面的代码没问题,但如果用这段代码连续写入,就会出错!!!

错误所在: 用 SetString() 这个函数写入字符串,会破坏原有数据导致整个Excel文件袋额损坏!!!

如果不需要写入字符串,那么这个库还是比较好用的

© 著作权归作者所有

下一篇: C/C++ 调用DLL
t
粉丝 1
博文 68
码字总数 21802
作品 0
武汉
程序员
私信 提问
常见读写excel文件的库/类

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/byxdaz/article/details/83578236 读写EXCEL表格,有这几种方法:COM方式、ODBC方式、OLE方式、纯底层格式分析...

byxdaz
2018/10/31
0
0
号外,号外,DoitPHP 1.4 版正式发布啦

更新日志: 1、新增对redis的支持 2、去掉统一hash扩展类(项目开发时根本用不到) 3、修复驱动层的几处BUG 4、全部文件统一更改为驼峰命名,弃用先前的下划线命名(先前采用下划线命名一直倍受...

dotiphp
2012/09/03
1K
10
Go 语言读写 Excel 文档

Excelize 是 Golang 编写的一个用来操作 Office Excel 文档类库,基于微软的 Office OpenXML 标准。可以使用它来读取、写入 XLSX 文件。相比较其他的开源类库,Excelize 支持写入原本带有图片...

xurime
2017/05/11
0
0
操作 Office Excel 文档类库 - Excelize

Excelize 是 Go 语言编写的一个用来操作 Office Excel 文档类库,基于 ECMA-376 Office OpenXML 标准。可以使用它来读取、写入 XLSX 文件。相比较其他的开源类库,Excelize 支持写入原本带有...

xuri
2016/08/30
4.5K
2
php导入导出excel实例

这里实现的PHP导入导出excel功能用到的是开源PHPExcel,执行下面的操作之前请先下载该类库文件,官方网站:http://www.codeplex.com/PHPExcel,官网案例代码很多,导出pdf什么的都有,这里主...

card123
2015/09/24
450
0

没有更多内容

加载失败,请刷新页面

加载更多

Java集合类常见面试知识点总结

Java集合类学习总结 这篇总结是基于之前博客内容的一个整理和回顾。 这里先简单地总结一下,更多详细内容请参考我的专栏:深入浅出Java核心技术 https://blog.csdn.net/column/details/21930...

Java技术江湖
27分钟前
5
0
怎么用for循环打出爱心

先上效果图: 这是用*组成的爱心,下面讲讲思路: 首先这个图形可以拆分成三部分:第一部分是上面三行的两个梯形,第二部分是中间三行的长方形,第三部分是最下面的倒三角形。 其实图形拆分好...

INEVITABLE
33分钟前
4
0
用HttpUrlConnection伪造成HttpClient

https://www.jianshu.com/p/27ad06cc39d2

shzwork
38分钟前
4
0
Golang net/http处理表单请求

代码示范: package mainimport ("fmt""html/template""net/http")const tpl = `<html><head><title>Hey</title></head><body><form method="POST" action="/">......

听夜深窗外风
46分钟前
5
0
博客迁移 开源中国博客不再更新 之后考虑关停

博客迁移 开源中国博客不再更新 之后考虑关停 我的博客地址:blog.mrpei.cc

MrPei
46分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部