基于npoi导出excel文件的研究与实现

基于npoi导出excel文件的研究与实现

ID:15717833

大小:27.50 KB

页数:6页

时间:2018-08-05

基于npoi导出excel文件的研究与实现_第1页
基于npoi导出excel文件的研究与实现_第2页
基于npoi导出excel文件的研究与实现_第3页
基于npoi导出excel文件的研究与实现_第4页
基于npoi导出excel文件的研究与实现_第5页
资源描述:

《基于npoi导出excel文件的研究与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于NPOI导出Excel文件的研究与实现  [摘要]在基于B/S结构进行开发的应用系统中,“文件导出”是一项很重要的功能,利用它可以导出相关的业务数据,以便进行资料保存或者不同业务间的数据交互。本文就如何利用NPOI导出一个真正的Excel文件进行研究与分析。  [关键词]NPOI;导出;Excel文件  doi:10.3969/j.issn.1673-0194.2013.15.061  [中图分类号]TP294[文献标识码]A[文章编号]1673-0194(2013)15-0093-02  1导出Excel文

2、件的传统方法  在进行Excel文件导出时,传统的方法一般都是利用Excel程序自身能够识别网页中的表格内容这种特性来实现的。当Web服务程序在响应客户端浏览请求时,先输出MIME类型,然后输出表格等HTML内容。比如(以C#代码为例):  Response.Clear();  Response.Buffer=false;  Response.AddHeader("Content-Disposition","attachment;filename=test.xls");  Response.ContentType

3、="application/ms-excel";  StringWritersw=newStringWriter();  HtmlTextWriterhtw=newHtmlTextWriter(sw);  GridView1.RenderControl(htw);  Response.Write(sw.ToString());  Response.End();  其中GridView1为Web服务端的GridView控件的ID。利用此方法的前提是需要重载VerifyRenderingInServerForm函数,

4、取消其函数内容。  通过这种方法,可以将Web页面中的表格内容以HTML代码的方式输出到客户端浏览器,并提示保存名为test.xls的Excel文件。用记事本打开该文件,会发现其内容是HTML标记的网页文件,并非真正的二进制Excel文件。  2Excel文件导出的其他几种可行方法  想要导出真正的二进制Excel文件,一是可以利用Excel应用程序对象创建Excel文件,然后输出二进制流到客户端浏览器进行保存;二是可以利用第三方的Excel类库,比如MyXlS、Koogra和NPOI等,直接生成二进制的Exce

5、l文件,然后输出二进制流到客户端浏览器进行保存。  利用Excel程序对象创建Excel文件首先要添加Microsoft.Office.Interop.Excel引用,并在代码中添加引用usingMicrosoft.Office.Interop.Excel,然后新建一个ApplicationClass实例,通过Excel应用程序实例进行相关的Excel文件操作,将创建的临时Excel文件读到内存流中,然后以二进制方式输出,并在最后将此实例释放。  使用Excel应用程序对象创建Excel文件,需要在服务器端安装O

6、ffice,而且还需要设定权限允许.NET访问COM+,并且在服务器端会看到Excel程序窗口一闪而过,当然可以让程序窗口不显示,但是任务管理器里还是会有Excel程序的进程,如果多个用户同时请求导出Excel文件,会产生多个Excel程序的进程,消耗过多的服务器资源,可能导致服务器宕机。另外Excel程序会把只包含数字的列进行类型转换,原本是文本型的,Excel程序会将其转成数值型,比如000123会变成123。如果内容以“=”开头,Excel程序还会把它当成公式执行,然后报错等,不便于原始格式Excel的生成

7、。  使用第三方Excel类库的优势就是不需要在服务器上安装微软的Office,避免版权问题,而且使用起来比OfficePIA的API更加方便,更人性化,但几种Excel类库各有千秋。比如MyXlS是一个免费开源的类库,侧重于Excel的输出。可以设置到单个单元格,但读取功能很弱。Koogra与MyXlS恰恰相反,是一个非常好用Excel读取类库,其最新版可以支持Excel2007格式,可是在测试过程中发现Koogra读不了MyXlS输出的XLS文件。而NPOI不仅支持导出Excel,还支持导入Excel,并能“

8、理解”OLE2文档结构。对于Excel文件来讲,NPOI不单是能创建Excel文件,而且能更深入地执行Excel文件的各种操作,比如支持单元格的格式设置、合并单元格、对齐设置、使用边框、字体设置、背景和纹理设置、宽度和高度设置等,还能使用Excel公式、创建图形、设置打印机属性、锁定列、设置密码等多项操作。  3利用NPOI导出Excel文件的实现  基于上述分析,我们使

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。