导入和导出

1、当我们在一个网站看到了需要的数据时,有时候会选择所需要的数据进行导出,那么导出的时候就需要用到导出的表格,下面就是一个案例,在需要导出的时候,我们需要根据页面的表格来进行操作。

2、在进行导出的时候,我们也需要进行数据的查询,然后再设置其可以条件查询,导出的时候必须得添加一个NPOI的引用,然后将查询出来的数据转化为对象列表的格式。

3、创建工作簿Excel,给表格实例化,引用NPOI。

 

4、为工作簿创建工作表并命名。

5、编写工作表,给表设置表头,创建标题行并设置字段。创建第一行,并创建9列赋值。再创建数据行。

 

6、给Excel表格文件命名,怎么命呢?我们根据时间来给Excel文件表格命名,因为时间具有唯一性,然后声明一个值来赋值,"考生信息"就是Excel文件名的名称,接着获取当前的时间来拼接字符串。

 

7、它返回的值是一个文件类型,"application/vnd.ms-excel"它的意思是返回一个Excel表格的类型,它返回的参数值有三个。

 

8、在输出的是文件时,因为它还是文件流,所有我们还需要借助IO流来帮助导出。文件流的方式也有两种方式,一种是通过read来读取,一种是通过write来读取。

 

  1. 导出之前调用Seek(偏移量,游标位置)把0位置指定为开始位置。

 

10、在导出的时候,我们专门设置了其单独的按钮,用Layui的button的导出栏来设置按钮的绑定工具条来绑定数据,导出时可以进行条件查询,然后导出的数据必须与查询出来的数据进行比较,必须相等才能获取当前导出的条件数据。这样一个导出的数据就完成了。

 

11、有导出就有导入,但是导入就比导出较麻烦。

 

  1. 在导出时,我们要判断数据的表格是不是Excel表格(.xls)类型。

<1>获取读取的文件

<2>把文件转换为二进制数组

<3>二进制数组转成内存流

<4>利用NPOI把内存流中的数据读取成工作簿Excel

  1. 工作簿中有工作表
  2. 工作表中有数据
  3. 数据的准确性
  4. 数据都有,然后读取数据

下面是借助模态框来制作的导入数据

 

12、就算是导入的表都选好后,我们也需要把表格临时存放在临时表格里,不能马上把表格存入数据库,因为它还要经过筛选才能进行到导入数据库。

 

13、导入也还需用到IO流的参数来传输值。HttpPostedFileBase是充当类的基类,这些类提供对客户端已上载的单独文件的访问。

 

14、获取文件的名称来读取文件类型。要注意的是:在导入是必须要有模板,在能进行对文件的导入,不然会显示文件的不存在。导入时要严格按照下面的模板进行。

 

15、因为文件的类型有很多种,如:xlsx、xls、Csv,但现在的NPOI只支持xls的格式,在HTML里还需设置accept的属性。它规定能够通过文件上传进行提交的文件类型。

 

16、判断类型是不是.xls格式,Word的Excel不可以跟页面直接对接,必须转化成二进制然后在转化为内存流才能读取。要注意byte的内存存放

 

17、接着把IO流转化为内存流的格式:

 

18、判断工作簿中有工作表,把内存流转化为工作簿(IWorkbook)

 

19、在IWorkbook工作簿中获取处ISheet工作表。注意获取的索引值。

20、判断数据的准确定,要注意一列一列的获取数据,然后再在页面上读取出数据的值。

21、最后,把数据保存到Session中就是成功了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值