论文部分内容阅读
摘要:在软件项目中,笔者常常用到将查询出来的数据,导出到Excel表格中去的功能,或者将Excel表格中的数据导入到内存中去。该文以使用NPOI导出到Excel为例,对NPOI中的workbook,sheet,row,cell等几个名词及具体对应的操作类,类的方法,进行了详细的讲解、使用。
关键词:NPOI;Excel;数据导入导出
中图分类号:TP317 文献标识码:A 文章编号:1009-3044(2017)28-0008-02
1 概述
在日常的工作中,我们习惯通过Excel进行数据的统计、整理,所以在软件开发中,对从数据库中查询的数据导出到Excel是一个必不可少的功能。
2 NPOI的优势
目前Excel导入导出有多种方法,而今天我们要研究的是通过一个叫做NPOI的组件,进行数据的导入导出。NPOI具有如下优势:
1) 该插件可以免费使用。
2) 许多Excel的特点都可以使用,比如说表格的样式等。
3) 有专业的团队,提供优秀的技术支持。
4) xls, xlsx, docx等格式都可以操作。
5) 面向接口编程,可以在命名空间中查看接口定义。
6) 既能完成文件的导出,也能将Excel导入到系统中。
7) 支持较早的.net Framework版本
8) 有大量的成功案例
9) 较多的技术学习资料。
10) 你不需要在服务器上安装微软的Office,可以避免版权问题。
11) 使用起来比Office PIA的API更加方便,更人性化。
12) 你不用去花大力气维护NPOI,NPOI Team会不断更新、改善NPOI,绝对省成本。
3 NPOI操作类说明
3.1 工作本对象
HSSFWorkbook表示工作本,它包含几个重要的函数。函数一是CreateSheet,函数二GetSheetAt,函数三CreateCellStyle,函数四CreateFont,函数五Write(stream),以及HSSFWorkbook本身的无参构造函数
1) 新建一个工作本使用HSSFWorkbook的无参构造函数。
2) 指定sheet对象的创建用函数一,括号内参数为对象索引。
3) 想要得到指定索引的sheet对象,用函數二,括号内参数为对象的索引。
4) 函数四用来新建一个样式对象,该样式对象用于单元格。
5) 新建字体对象实用函数五。
6) 函数六是将workbook写到流中。
3.2 工作表对象
HSSFSheet表示工作表对象,它有三个函数。函数一CreateRow、函数二GetRow、函数三AddMergeRegion、函数四SetColumnWidth
1) 新建索引行用第一个函数。
2) 获得指定索引指向的行使用第二个函数。
3) 第三个函数可以设置单元格的区域合并。
4) 函数四可是设定列的宽度。
3.3 行对象
HSSFRow表示行对象,它有两个函数和一个属性。函数一CreateCell、函数二GetCell,一个属性为HeightlnPoints。
1) 新建索引行使用函数一。
2) 获得指定单元格使用函数二。
3) 设定行的高度使用属性。
3.4 单元格对象
HSSFCell是单元格对象,它有一个函数和两个属性。函数一为SetCellValue、属性一***CellValue、属性二CellStyle。
1) 用函数一为单元格赋值。
2) 属性一***可以得到单元格的指定类型的内容。
3) 设定单元格的样式使用属性二。
3.5 单元格样式对象
HSSFCellStyle是单元格样式对象,函数一SetFont和属性一Alignment。
1) 字体样式使用函数一设定
2) 属性一有三个参数,数字1表示水平居左,数字2表示水平居中,数字3表表示水平居右。
3.6 字体对象
HSSFFont是字体对象。它有两个属性。属性一FontHeightlnPoints、属性二Boldweight。
1) 属性一可以用来设置字体大小。
2) 属性二可以改变字体的粗细。
4 demo操作演示
在VS中新建项目,选择Visual C#——Windows——Windows窗体应用程序,命名为Test,在Test中,添加——Windows窗体,命名为NPOITest,在NPOI官网(http://npoi.codeplex.com/)下载编译过后的NPOI类库,打开,将文件夹内的全部内容复制,将复制的内容粘贴lib文件夹下(若无此文件夹,找到项目所在位置,在项目文件夹内新建),如下图:
Test项目中添加引用,如下图:
在NPOITest窗体中,添加一个按钮和一个DataGridView控件。效果如下:
绑定数据源,此处为做演示,我用了某个管理系统的管理员列表的数据库数据(大家做测试可以使用自己的数据库),当窗加载时自动加载数据,如图4。
5 导出按钮后台代码截图
6 效果图
效果图如图5所示。
7 结束语
实现了从软件系统中将数据库中查询的数据导出到Excel中,可在实际应用中参考此方法实现数据导出,具有实用价值。
参考文献:
[1] 魏文胜.Excel与SQLServer数据的相互转换之方法[J].电脑知识与技术,2007(10):892.
[2] 张丽英.基于.NET的Excel数据批量导入SQL Server的设计与实现[J].南通纺织职业技术学院学报, 2012, 12(1):7-10.
[3] 游向峰.基于ASP.NET的SQL与Excel数据互导的研究与实现[J].电脑知识与技术, 2010(11):8953.
关键词:NPOI;Excel;数据导入导出
中图分类号:TP317 文献标识码:A 文章编号:1009-3044(2017)28-0008-02
1 概述
在日常的工作中,我们习惯通过Excel进行数据的统计、整理,所以在软件开发中,对从数据库中查询的数据导出到Excel是一个必不可少的功能。
2 NPOI的优势
目前Excel导入导出有多种方法,而今天我们要研究的是通过一个叫做NPOI的组件,进行数据的导入导出。NPOI具有如下优势:
1) 该插件可以免费使用。
2) 许多Excel的特点都可以使用,比如说表格的样式等。
3) 有专业的团队,提供优秀的技术支持。
4) xls, xlsx, docx等格式都可以操作。
5) 面向接口编程,可以在命名空间中查看接口定义。
6) 既能完成文件的导出,也能将Excel导入到系统中。
7) 支持较早的.net Framework版本
8) 有大量的成功案例
9) 较多的技术学习资料。
10) 你不需要在服务器上安装微软的Office,可以避免版权问题。
11) 使用起来比Office PIA的API更加方便,更人性化。
12) 你不用去花大力气维护NPOI,NPOI Team会不断更新、改善NPOI,绝对省成本。
3 NPOI操作类说明
3.1 工作本对象
HSSFWorkbook表示工作本,它包含几个重要的函数。函数一是CreateSheet,函数二GetSheetAt,函数三CreateCellStyle,函数四CreateFont,函数五Write(stream),以及HSSFWorkbook本身的无参构造函数
1) 新建一个工作本使用HSSFWorkbook的无参构造函数。
2) 指定sheet对象的创建用函数一,括号内参数为对象索引。
3) 想要得到指定索引的sheet对象,用函數二,括号内参数为对象的索引。
4) 函数四用来新建一个样式对象,该样式对象用于单元格。
5) 新建字体对象实用函数五。
6) 函数六是将workbook写到流中。
3.2 工作表对象
HSSFSheet表示工作表对象,它有三个函数。函数一CreateRow、函数二GetRow、函数三AddMergeRegion、函数四SetColumnWidth
1) 新建索引行用第一个函数。
2) 获得指定索引指向的行使用第二个函数。
3) 第三个函数可以设置单元格的区域合并。
4) 函数四可是设定列的宽度。
3.3 行对象
HSSFRow表示行对象,它有两个函数和一个属性。函数一CreateCell、函数二GetCell,一个属性为HeightlnPoints。
1) 新建索引行使用函数一。
2) 获得指定单元格使用函数二。
3) 设定行的高度使用属性。
3.4 单元格对象
HSSFCell是单元格对象,它有一个函数和两个属性。函数一为SetCellValue、属性一***CellValue、属性二CellStyle。
1) 用函数一为单元格赋值。
2) 属性一***可以得到单元格的指定类型的内容。
3) 设定单元格的样式使用属性二。
3.5 单元格样式对象
HSSFCellStyle是单元格样式对象,函数一SetFont和属性一Alignment。
1) 字体样式使用函数一设定
2) 属性一有三个参数,数字1表示水平居左,数字2表示水平居中,数字3表表示水平居右。
3.6 字体对象
HSSFFont是字体对象。它有两个属性。属性一FontHeightlnPoints、属性二Boldweight。
1) 属性一可以用来设置字体大小。
2) 属性二可以改变字体的粗细。
4 demo操作演示
在VS中新建项目,选择Visual C#——Windows——Windows窗体应用程序,命名为Test,在Test中,添加——Windows窗体,命名为NPOITest,在NPOI官网(http://npoi.codeplex.com/)下载编译过后的NPOI类库,打开,将文件夹内的全部内容复制,将复制的内容粘贴lib文件夹下(若无此文件夹,找到项目所在位置,在项目文件夹内新建),如下图:
Test项目中添加引用,如下图:
在NPOITest窗体中,添加一个按钮和一个DataGridView控件。效果如下:
绑定数据源,此处为做演示,我用了某个管理系统的管理员列表的数据库数据(大家做测试可以使用自己的数据库),当窗加载时自动加载数据,如图4。
5 导出按钮后台代码截图
6 效果图
效果图如图5所示。
7 结束语
实现了从软件系统中将数据库中查询的数据导出到Excel中,可在实际应用中参考此方法实现数据导出,具有实用价值。
参考文献:
[1] 魏文胜.Excel与SQLServer数据的相互转换之方法[J].电脑知识与技术,2007(10):892.
[2] 张丽英.基于.NET的Excel数据批量导入SQL Server的设计与实现[J].南通纺织职业技术学院学报, 2012, 12(1):7-10.
[3] 游向峰.基于ASP.NET的SQL与Excel数据互导的研究与实现[J].电脑知识与技术, 2010(11):8953.