一种高效率.NET平台Excel文件控制方法.docVIP

一种高效率.NET平台Excel文件控制方法.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种高效率.NET平台Excel文件控制方法

一种高效率.NET平台Excel文件控制方法   摘要:目前,.NET框架下开发中的Excel应用主要使用微软提供的OLE接口,但是这种方法需要服务器后台启动Excel进程,当应用数据量或者用户激增时,OLE方法将极大地耗费系统资源。对一种Java编译的第三方空间NPOI进行了研究,详细阐述了对Excel文件格式进行控制的方法,能够实现在服务器未安装MS Office的环境下,采用文件流方式对Excel文件进行读写和控制,从而极大地节省了服务器资源。   关键词关键词:NET;NPOI;Excel;文件流   中图分类号:TP301文献标识码:A文章编号文章编号2013)011002602   0引言   由Windows平台支撑的.NET框架是目前Web开发使用的主要工具之一,是由微软公司提供的解决方案。在Webform开发过程中,一般采用微软体系下的OLE方式对Excel文件进行读写编辑的操作,虽然代码编写简单,网上也有大量的例程,但是当Web程序真正投入使用时,其响应速度和资源耗用却不能使用户感到满意,尤其是在数据量大、瞬时爆发用户多、页面结构复杂的情况下。究其主要原因在于:①需要在服务器安装Office系统;②每接入一个用户都要启动一个Excel进程。笔者以前编写的应用程序在投入使用之后,高峰期服务器进程中有40多个Excel进程,每个占用内存5~40M之间,服务器不堪重负。因此,使用一种替代方案尤为必要。   1NPOI简介   NPOI是POI的.NET版本,是一套用Java写成的第三方库,能够帮助Webform的开发者在没有安装Office的情况下读写Excel格式的文件,目前其2.0版本已经能够支持Excel 2007。NPOI对Excel进行读写的主要方法是按照Excel组织文件的格式规则和方法通过文件流方式生成Excel文件,从而避免了通过OLE方式激活庞大的Excel进程,大量节省了服务器的资源,提高了服务器生成Excel文件的性能。   对于Webform开发者来讲,Excel包括的核心元素按照层次由上至下有工作簿(也就是一个xls文件)、工作表(也就是一个sheet)、表格中一个行、表格中的一个单元格。与此相对应,NPOI通过HSSFWorkbook、HSSFSheet、HSSFRow、HSSFCell这4个类分别来定义上述的Excel核心元素,完成xls文件的创建过程。   2NPOI应用实例   NPOI在使用之前,要引用NPOI.dll、Ionic.Zip.dll这两个文件,并引用NPOI.HSSF.UserModel这个命名空间,如果要使用功能更强的SS接口,则要同时引用NPOI.SS.UserModel。   2.1创建一个基本的Excel文档   构造一个xls文件,首先要创建一个工作簿book1:   IWorkbook book1 = new HSSFWorkbook();   然后,创建一个工作表sheet1:   ISheet sheet1 = book1.CreateSheet(新工作表);   这里新创建的对象sheet1对应的工作表在xls被命名为“新工作表”,那么一个新的完整结构的空xls文件即被创建。如果需要向xls填充数据,则需要定义一个表格行和一个单元格:   IRow row0 = sheet1.CreateRow(0);   ICell cell0 = row0.CreateCell(0);   以上方法创建了工作表中行号为1的一个表格行,同时创建了行号为1,列号为A的单元格A1。要向这个单元格写入数据,则使用如下方法:   cell0.SetCellValue(这是第一格数据);   此时,一个完整的具有所有元素的Excel空白文档就生成了。   2.2基本Excel文档格式控制方法介绍   在Excel的使用过程中,设置页边距、边框、列宽行高、文字字体、数值样式,以及合并单元格、单元格水平垂直居中等经常要使用到Excel功能,NPOI对页面的这些设置也都能实现,下面简单介绍一下设置的方法。   (1) 设置页边距。页边距设置如图1所示,方法如下:   (2) 设置边框。官方例程里是用Region方法来批量设置边框格式,但是仍然在进化过程中的NPOI1.2.5版本在VS2010下使用Region方法调试通不过,所以退而求其次对单元格进行边框样式设定。首先使用ICellStyle创建一个单元格格式对象,然后对单元格边框进行指定:   (3) 设置列宽和行高。使用以下方法设置列宽和行高:   sheet1.SetColumnWidth(0,50*256);//设置第一列的宽度   shee

文档评论(0)

fangsheke66 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档