找回密码
 会员注册
查看: 154|回复: 0

ASP.NET数据导出到Excel

[复制链接]

250

主题

1

回帖

819

积分

管理员

积分
819
发表于 2024-2-29 08:33:06 | 显示全部楼层 |阅读模式

《ASP.NET数据导出到Excel》
开发工具与关键技术:Visual Studio / .NET
作者:肖春庆
撰写时间:2019年04月03日
在使用软件过程中,我们会将自己需要用的数据,以Excel工作表的形式进行数据导出,以便数据的使用或者光看。
引用NPOI插件,把NPOI添加在项目中,并引用进来(图1)。
选择项目路径,找到NPOI.dll确定引用,引用成功时,在资源管理器中的引用中,会显示NPOI(图1)的右边。

在这里插入图片描述

NOIP流的作用,把文件、图片等等,转换数据的形式并且把它存储起来。在需要的时候调用出来应用。它可以创建数据的多种形式例如:Excel工作表、表格等等。
要调用数据,必须把数据查询出来,并且需要的数据筛选出来。
现在要导出一个记录学生成绩信息的Excel工作表,表头为:学号、姓名、性别、班级、成绩、合格类型。将查询出来筛选的数据,转换成实体对象列表的格式。通过ToList();获取数据。
使用NPIO的方法HSSFWorkbook创建一个Excel工作表出来。并且将转换成实体对象列表的格式数据建立关联。使用方法ISheet创建表格格式,并为命名。编写表的内容。设计标题行,用rowl的方法给第一行的表头一一赋值(如同图2):表头从0到5分别为学号、姓名、性别、班级、成绩和合格类型。注意表头命名要以数据库表的名称一致。

在这里插入图片描述

图2
将数据库的数据,一一写入Excel。应用前面IRow方法和for循环一同导入Excel。声明一个变量i开始为0,Count()记录 数据的总是。因为表格一开始的内容为空,当写入的数据小于或者等于查询出来的数据的总数据是时i不断的自增。每一列都在数据库里有对应的数据。要标明Excel的第几列内容是数据库里的数据内容名称。如果第2列内容是姓名,那么要获取查询出来的数据,并且关联数据存储的名称。注意:数据的存储格式如果与Excel的格式冲突时要进行数据转换。
为我们的Excel表格命名,并且转换成需要的格式。在这里命名为“学生安全教育测试成绩”,格式为年月日时分秒+.xls。将Excel表格转换流的模式,输出文件流,并且写入文件流向流中写入序号。它将在Excel表格的第一列,生成序号关联其它内容。应用Seek输出把位置指定从0开始。返回Excel表格,确定文本格式(例如图3)。
在这里插入图片描述

图3
提取查询出来的数据,获取table条件,声明变量记录查询数据,输出要导出的数据。然后声明变量记录导出的数据,获取导出条件,输出要导出的数据。将查询出来的数据条件与导出来的数据条件进行对比。对比结果一定要一致,否则说明数据异常;一致的同时应用window.open把数据导出Excel表(金典代码见图4)。
在这里插入图片描述

图4
在这里Excel工作表的样式,是通过代码布局,所以编写的时候要给Excel表布局。最后导出来的表格(如同图5)。
在这里插入图片描述

图5


来源:https://blog.csdn.net/weixin_44547775/article/details/89005542
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?会员注册

×
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

QQ|手机版|心飞设计-版权所有:微度网络信息技术服务中心 ( 鲁ICP备17032091号-12 )|网站地图

GMT+8, 2024-12-27 00:18 , Processed in 0.880186 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表