将导入的Excel表格的数据保存到session
1、 判断页面传过来的文件是否为Excel表格,通过获取文件的后缀(扩展名)
2、 声明二进制数组存放文件
3、 将文件转化为二进制数组存入之前声明的二进制数组中
4、 将二进制数组转化为内存流(MemoryStream)
5、 将内存流转化为工作簿
6、 接着处理工作簿,判断工作簿中是否有工作表
7、 查询出 学院,专业,年级,班级 的信息:用来根据名称获取对应的ID
8、 声明一个对象列表存放导入的学生信息
9、 获取到第一个工作表
10、 用PhysicalNumberOfRows(获取物理行数,即不包括空行、隔行情况)判断工作表中是否有数据
11、 然后将数据封装到DataTable中(定义DataTable)
12、 获取标题行
13、 获取表格列数
14、 获取表格行数
15、 接着创建DataTable中的列,for循环添加标题行中各个单元格中的数据
⑴ 遍历获取表头行每一个单元格的数据
⑵ 将获取到的表头行数据放入DataTable中
16、 读取Excel表格中的数据
⑴ 获取行数据
⑵ 创建DataTable行
⑶ 判断行不为空,遍历Excel表格中的一行所有单元格
⑷ 添加新行至DataTable中
17、 声明变量记录成功和失败数据条数
18、 遍历DataTable中数据
⑴创建studentVo对象保存每一条数据
⑵a:获取学院ID及名称
b:获取专业ID及名称
c:获取年级ID及名称
d:获取班级ID及名称
添加每条数据至对象列表
19、 将数据保存到session中
导出数据到Excel表格
1、 数据查询及条件筛选
2、 创建Excel工作簿
3、 创建Excel工作表
4、 创建表头行
5、 设置表头
6、 For循环给Excel表格添加数据
创建行
添加数据
7、 为Excel文件命名
8、 转化为内存流MemoryStream()
9、 将表格写入内存流
10、 调用seek(偏移量、游标位置)
11、 返回文件类型