一个方便且通用的导出数据到 Excel 的类库
一个方便且通用的导出数据到 Excel 的类库
起源:
之前在做一个项目时,客户提出了许多的导出数据的需求:
- 导出用户信息
- 导出业务实体信息
- 各种查询都要能导出
- 导出的数据要和界面上看到的一致
- 可以分页导出
- 。。。
为了应对用户的这些需求,我决定先写一个能够满足这些需求的导出功能封装库,于是就有了这个类库。
选材:
导出 Excel 完全靠自己写是不太实际的,因此需要使用一些现成的东西,目前导出 Excel 大约有一下方法:
- 使用 COM 组件
- 使用 OpenXMLSDK
- 使用 NPOI
使用 COM 组件,效率较低
使用 OpenXmlSDK,目前智能生成 Office 2007 格式,还不够通用
NPOI 是一个开源库,从 java 的 POI 中移植而来,支持 Office 2003 以前的格式,也具有较高的性能。
因此,我决定对 NPOI 进行一个封装,于是就有了这个类库。下面介绍一下这个类库。
类库介绍
本类库通过对数据源的抽象,提取了一个接口,来支持多种数据源,并且提供了一些常见的实现。
随类库提供了一个演示程序,演示了本类库支持的主要特性。
类库封装了 NPOI,为了支持分页,使用了 SharpZipLib 来打包文件,这两个都是开源的类库,本类库的项目中已经包含这两个类库编译好的版本,如果需要他们的源代码,可以自行到相应的官方下载地址下载。
打开解决方案文件 Baiynui.Exports\Baiynui.Exports\Baiynui.Exports.sln,就可以打开本类库的源代码工程和演示工程。
适用场景
- 本类库是为解决批量数据导出的问题而设计的,对批量数据的导出提供回调过滤的操作,可以方便的控制导出的数据。
- 导出需要一个数据源,数据源是一个接口,可以自行实现。本类库中自带一些实现,可以导出 DataTable,DataSet,DataGridView 等
- 支持分页
不适用场景
本类库对需要格式定制的 Excel 没有考虑,不能满足此种需求
最后强调,打开解决方案文件 Baiynui.Exports\Baiynui.Exports\Baiynui.Exports.sln,就可以打开本类库的源代码工程和演示工程,祝你使用愉快,如果在使用的过程中遇到任何问题,都可以联系我。
类库下载地址:http://files.cnblogs.com/baiynui1983/Baiynui.Exports.rar
一个方便且通用的导出数据到 Excel 的类库的更多相关文章
- 分享一个导出数据到 Excel 的类库
起源: 之前在做一个项目时,客户提出了许多的导出数据的需求: 导出用户信息 导出业务实体信息 各种查询都要能导出 导出的数据要和界面上看到的一致 可以分页导出 ... 为了应对用户的这些需求,我决定先 ...
- C#导出数据到Excel通用的方法类
导出数据到Excel通用的方法类,请应对需求自行修改. 资源下载列表 using System.Data; using System.IO; namespace IM.Common.Tools { p ...
- python 导出数据到excel 中,一个好用的导出数据到excel模块,XlsxWriter
最近公司有项目需要导出数据到excel,首先想到了,tablib,xlwt,xlrd,xlwings,win32com[还可以操作word],openpyxl,等模块但是 实际操作中tablib 写入 ...
- MVC导出数据到EXCEL新方法:将视图或分部视图转换为HTML后再直接返回FileResult
导出EXCEL方法总结 MVC导出数据到EXCEL的方法有很多种,常见的是: 1.采用EXCEL COM组件来动态生成XLS文件并保存到服务器上,然后转到该文件存放路径即可: 优点:可设置丰富的EXC ...
- 1.ASP.NET MVC使用EPPlus,导出数据到Excel中
好久没写博客了,今天特地来更新一下,今天我们要学习的是如何导出数据到Excel文件中,这里我使用的是免费开源的Epplus组件. 源代码下载:https://github.com/caofangshe ...
- 导出数据到Excel --使用ExcelReport有感
先看图,这是几个月前用NPOI写的导出数据到Excel,用了上百行代码,而且难控制,导出来也比较难看 excel打开的效果 下面是我用ExcelReport类库导出到Excel的操作 1.首先引用Ex ...
- Dynamics CRM导出数据到Excel
原创地址:http://www.cnblogs.com/jfzhu/p/4276212.html 转载请注明出处 Pivot Table是微软BI的一个重要工具,所以这里讲一下Dynamics CRM ...
- ASP.NET导出数据到Excel 实例介绍
ASP.NET导出数据到Excel 该方法只是把asp.net页面保存成html页面只是把后缀改为xlc不过excel可以读取,接下连我看看还有别的方式能导出数据,并利用模版生成. 下面是代码 新建 ...
- 利用PHPExcel读取Excel的数据和导出数据到Excel
PHPExcel是一个PHP类库,用来帮助我们简单.高效实现从Excel读取Excel的数据和导出数据到Excel.也是我们日常开发中,经常会遇到的使用场景.比如有个客户信息表,要批量导出发给同事,我 ...
随机推荐
- 跟着大神重写的KNN 文档归类小工具
·背景 在知道KNN之前,楼主有时候会粗糙地做一些分类模型的计算.在拜读了Orisun大神[http://www.cnblogs.com/zhangchaoyang/articles/2162393. ...
- fast-json.jar的用法
fast-json.jar 解析json数据:一种json数据解析方式是这种,点击这里下载jsonfast.jar+fastjsonAPI文档 [ { "id": 6378, &q ...
- ASP.Net MVC请求处理流程
ASP.Net MVC请求处理流程 好听的歌 我一直觉得看一篇文章再听一首好听的歌,真是种享受.于是,我在这里嵌入一首好听的歌,当然你觉得不想听的话可以点击停止,歌曲 from 王菲 <梦中人& ...
- yii性能调节
网络应用程序的性能受很多因素的影响.数据库存取,文件系统操作,网络带宽等都是潜在的影响因素. Yii 已在各个方面减少框架带来的性能影响.但是在用户的应用中仍有很多地方可以被改善来提高性能. 1. 开 ...
- 让IE6支持position:fixed的方法,CSS expression与JavaScript eval讲解
做吸顶效果或是固定效果时,使用position:fixed无非是最方便的,可是万恶的IE6是没有fixed这个属性值的,而我们要使IE6能够像fixed一样固定在浏览器中的某个位置,使用onscrol ...
- 转载:Linux Used内存到底到哪里去了?
转自:http://blogread.cn/it/article/6264?f=wb2 有时在Linux下会碰到这样的问题:ps aux看到的RSS内存只有不到30M,但是free看到内存却已经使用了 ...
- iSwifting社区【www.iSwifting.com】招聘版主
iSwifting社区[www.iSwifting.com]昨天找来几个主持人.我已经被任命为他们的任务领域. 他们有百度的project噢,还有cocoaChina问答区的活跃人物! 欢迎大家一起学 ...
- 1cocos2dx扩展UI控制,CCControlSlider,CCScale9Sprite(九妹图。),CCControlSwitch,CCControlButton
UI控件来自cocos2dx的扩展库.完好了UI方面的元素,使cocos2dx更加丰富多彩.使用扩展库需包括: #include "cocos-ext.h" USING_NS ...
- 负载均衡DNS和反向代理优缺点
负载均衡 (Load Balancing) 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽.增加吞吐量.加强网络数据处理能力.提高网络的灵活性和可用性. 负载均衡(又 ...
- leetcode第16题--3Sum Closest
Problem:Given an array S of n integers, find three integers in S such that the sum is closest to a g ...