Visual Studio

阿泽.᭄ꦿ 2020-08-09 08:21:54
1导出
Excel的数据处理功能非常强大,因此在日常工作中,我们经常需要将数据从数据库或Datatable等数据源导入到Excel文档来进行数据分析或运算,有时候又需要将Excel文档中的数据导出到数据库或者Datatable来读取数据。
导出Excel文件的思路是将WPF某个数据展示控件(如DataGrid)写入内存建立的Excel文件里面,然后通过保存文件对话框选择保存文件的路径,将内存中Excel的文件保存到选择的路径;
第一步:指定虚拟路径相对应的物理模板文件路径,检查Excel、工作簿和工作表是否存在。

第二步:声明两个字符串和实例化通用对话框(获取或设置筛选器字符串,用来确定在打开文件对话框显示的文件类型),(打开文件对话框中选取的单个文件名,包含完整路径)。
第三步:获取筛选导出的数据。引用NPOI来读取数据

第四步:使用NPOI打开模板Excel,使用FileStream(使用指定的读/写权限为指定的文件句柄初始化 System.IO.FileStream 类的新实例。File:提供用于创建、复制、删除、移动和打开文件的静态方法,并协助创建 System.IO.FileStream 对象。)文件打开Excel模板文件,得到一个工作簿(HSSFWorkbook excelBookTemplate:通过NPOI获取上传的Excel表格转换得到一个工作簿)。打开Excel模板文件所在第一个工作表,构建单元格样式,并且设置标题,如果筛选时间段不为空就拼接上筛选时间段

使用NPOI读取数据,获取模板文件格式将数据循环添加标题行中各个单元格的值,导入到Excel的单元格。
用(MemoryStream:创建其支持存储区为内存的流。)把Excel转化为定义文件流,并且将工作薄写入文件流,输出之前调用Seek(偏移量,游标位置)方法:获取文件流的长度,将Excel通过文件流(File)返回到视图

2 导入
Excel的数据处理功能非常强大,因此在日常工作中,我们经常需要将数据从数据库或Datatable等数据源导入到Excel文档来进行数据分析或运算,有时候又需要将Excel文档中的数据导出到数据库或者Datatable来读取数据。
导出Excel文件的思路是将WPF某个数据展示控件(如DataGrid)写入内存建立的Excel文件里面,然后通过保存文件对话框选择保存文件的路径,将内存中Excel的文件保存到选择的路径;
第一步:指定虚拟路径相对应的物理模板文件路径,检查Excel、工作簿和工作表是否存在。

第二步:声明字符串和实例化通用对话框(获取或设置筛选器字符串,用来确定在打开文件对话框显示的文件类型),(打开文件对话框中选取的单个文件名,包含完整路径)。
第三步:获取需要导入的数据文件,引用NPOI来读取数据:


第四步:把文件转换为二进制数组,二进制数组转成内存流,利用NPOI把内存流中的数据读取成Excel,判断工作表中是否有数据,然后把Excel保存到临时表格里面(DataTable中),获取模板文件格式,
使用NPOI读取数据,将数据循环添加标题行中各个单元格的值,导入到工作表的单元格。
第五步:传递数据后,还有去判断传递数据是否完整,再给用户设置一些提示。在控制器定义一个方法,去接收视图传过来的数据,在方法里面,去实例化数据,在对它进行赋值,赋值之后,就是导入,保存数据完成之后,要判断数据是否导入成功,数据是否为空/数据是否按照模板填写。


(三)上传图片
设置ID和点击事件名称,设置图片显示的长和高

设置图片的格式,使它能够通过文件上传进行提交的文件类型
accept 属性只能与 <input type="file"> 配合使用

设置图片双击事件,使用jqury触发文件选项框的点击事件< input type="file">

自定义用户头像点击事件,查看头像图片信息,根据是否存在头像图片信息显示查看/未上传

点击查看按钮显示图片,根据点击按钮事件所留的图片路径,展开弹窗层显示图片信息内容,不开启标题,不设置关闭按钮,可直接点击遮罩层关闭弹窗层,

用图片文件的正则表达式过滤掉不可读取文件图片的格式,显示可选择的图片文件,将选择的图片显示到ing元素,并使用FileReader读取图片转化URL,用文件读取onload事件,将读取到图片显示到ing元素

弹窗修改的模态窗体中设置显示用户头像的位置和图片路径
保存修改用户头像信息,首先获取用户头像参数,使用JQuery Ajax发送FormData数据,构建FormData数据,数据提交到控制器中,要告诉JQuery不要去处理发送的数据和不要设置Content-Type请求头


查询之前头像图片信息,查看是否上传了图片,设置文件类型(Path:对包含文件或目录路径信息的 System.String 实例执行操作)(GetExtension:返回指定的路径字符串的扩展名)接收文件返回路径
获取保存文件的路径和服务器部署路径,将文件名称设置到用户中,判断之前是否存在以前图片,需要删除旧的图片信息,为上传图片不做任何处理把数据库中的图片直接设置发哦user对象。

...全文
33 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

23,404

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧