web导出文件核心代码实例
发表于:2024-10-28 作者:千家信息网编辑
千家信息网最后更新 2024年10月28日,本篇内容主要讲解"web导出文件核心代码实例",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"web导出文件核心代码实例"吧!前端代码1.可直接写:locat
千家信息网最后更新 2024年10月28日web导出文件核心代码实例
本篇内容主要讲解"web导出文件核心代码实例",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"web导出文件核心代码实例"吧!
前端代码
1.可直接写:location.href = "后台请求地址"
2.用XMLHttpRequest形式(ajax axios fetch):
axios({ url: url, params: parameter, method:'get' , responseType: 'blob' }).then(data=>{ if (!data) { alert("文件下载失败") return } if (typeof window.navigator.msSaveBlob !== 'undefined') { //处理IE window.navigator.msSaveBlob(new Blob([data]), fileName+'.xls') }else{ let url = window.URL.createObjectURL(new Blob([data])) let link = document.createElement('a') link.style.display = 'none' link.href = url link.setAttribute('download', fileName+'.xls') document.body.appendChild(link) link.click() document.body.removeChild(link); //下载完成移除元素 window.URL.revokeObjectURL(url); //释放掉blob对象 }})
后台代码
//从服务器上下载文件核心代码 response.setContentType("application/x-msdownload;charset=utf-8"); String fileName="中文文件名.xls"; String userAgent = request.getHeader("user-agent").toLowerCase(); if (userAgent.contains("msie") || userAgent.contains("like gecko") ) { fileName = URLEncoder.encode(fileName, "UTF-8"); }else { fileName = new String(fileName.getBytes("UTF-8"), "iso-8859-1"); } response.setHeader("Content-disposition", "attachment; filename="+ fileName); InputStream inputStream = null; OutputStream outputStream=null; try { String imgurl = "服务器上的文件实际地址"; inputStream = new BufferedInputStream(new FileInputStream(imgurl)); outputStream = response.getOutputStream(); byte[] buf = new byte[1024]; int len; while ((len = inputStream.read(buf)) > 0) { outputStream.write(buf, 0, len); } response.flushBuffer(); } catch (Exception e) { logger.info("--通过流的方式获取文件异常--"+e.getMessage()); }finally{ if(inputStream!=null){ inputStream.close(); } if(outputStream!=null){ outputStream.close(); } }
//导出excel //此处省略 生成workbook的代码 String fileName = "登记发证统计.xls"; String userAgent = req.getHeader("user-agent").toLowerCase(); if (userAgent.contains("msie") || userAgent.contains("like gecko") ) { fileName = URLEncoder.encode(fileName, "UTF-8"); }else { fileName = new String(fileName.getBytes("UTF-8"), "iso-8859-1"); } // 设置强制下载不打开 resp.setContentType("application/force-download"); resp.setHeader("Content-disposition", "attachment; filename="+ fileName); OutputStream out = resp.getOutputStream(); workbook.write(out); resp.flushBuffer();
生成workbook的示例
到此,相信大家对"web导出文件核心代码实例"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
文件
代码
核心
UTF-8
实例
内容
后台
地址
实际
服务器
学习
服务
生成
实用
更深
上下
元素
兴趣
前端
实用性
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
珠海市网络技术有限公司
陇西智荣网络技术公司
序列号算法软件开发
网站的服务器太繁忙怎么办
高青瓷砖库存软件开发
图片服务器 存储
服务器外网安全吗
域文件服务器权限管理
网络安全知识讲座在哪看
新异奇邵武网络技术有限公司
数据库模拟试题
技校学大数据网络技术
洛阳三年制计算机网络技术教程
阿里巴巴家庭服务器
中学生网络安全PPT板块
夹牌服务器
mysql数据库连接编码
网吧服务器配置30台
数据库中nf关系是什么
和政县网络安全周宣传
dell服务器r620显卡
软件开发老加班好吗
网络协议怎么进入网站数据库
黑暗之魂3关闭服务器还可以玩吗
网络安全大赛考试内容
郧阳区好的软件开发诚信为本
网吧服务器配置30台
教育行业网络安全
财务软件开发报价
猪八戒pc软件开发