基于NPOI组件生成Excel报表的设计与实现
2016-03-22蔡小艳卢莉娜郑炎朱成文
蔡小艳++卢莉娜++郑炎++朱成文
摘要:为避免传统操作Excel遇到的问题,提高信息管理系统中数据导出操作的灵活性和通用性,该文详细介绍了在Visual Studio 2008使用C#语言、通过引用开源的NPOI组件,结合Microsoft SQL Server 2005实现数据库数据导出到Excel的设计思路和实现方法。
关键词:C#;Excel;NPOI;导出数据
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)01-0064-02
1 概述
NPOI是POI(POI是一个开源的Java读写Excel、Word等微软OLE2组件文档的项目)项目的.Net版本。NPOI可以在未安装Office的环境下实现Excel、Word等微软OLE2组件文档读写[1],并能实现公式计算、单元格高级样式等复杂操作。因此,本文借助第三方组件NPOI的方式来实现Excel数据的批量导出。
2 数据导出设计思路
2.1基本思路
采用NPOI组件将SQL Server数据库中的数据导出到Excel表格的思路分析:
1) 选择需要导出的数据;
2) 从SQL Server2005读取表中数据到DataSet中;
3) 调用FileStream类创建一个文件对象;
4) 调用HSSFWorkbook类创建工作薄对象;
5) 调用ISheet类创建工作表对象;
6) 定义表格行和单元格;
7) 将DataSet中的数据按格式要求分别填入工作表对应的单元格;
8) 将整个工作表内容写入到文件对象中,从而生成对应的Excel文件。
2.2数据导出流程图
使用NPOI组件导出Excel数据的流程图如图1所示。
3 使用NPOI导出数据到Excel
Excel包括的核心元素按照层次由上至下有工作簿(也就是一个xls文件)、工作表(也就是一个sheet)、表格中一个行、表格中的一个单元格。与此相对应,NPOI通过HSSFWorkbook、HSSFSheet、HSSFRow、HSSFCell 这4个类分别来定义上述的Excel核心元素,完成xls文件的创建过程[2]。
3.1添加NPOI的引用
使用NPOI创建Workbook之前,先要在项目中添加NPOI的引用,具体步骤如下:
1)在项目菜单栏中选择“项目”→“添加引用”,弹出“添加引用”对话框。……
