Java导出Excel,提示格式与文件扩展名不一致
后台代码,这是基础方法,还要根据使用调用
public static void exportExcel(HttpServletResponse response, String sheetName, String fileName, String[] header, List<String[]> content)throws IOException {// 清空responseresponse.reset();// 设置response的Headerresponse.setHeader("Content-disposition","attachment;filename=" + new String(fileName.getBytes("gbk"), "iso8859-1") + ".xlsx");response.setContentType("application/vnd.ms-excel;charset=gb2312");Sheet sheet = new Sheet(1, 0);sheet.setSheetName(sheetName);// 设置自适应宽度sheet.setAutoWidth(Boolean.TRUE);// 设置表头List<List<String>> list = new ArrayList<>();for (int i = 0; i < header.length; i++) {list.add(Collections.singletonList(header[i]));}sheet.setHead(list);OutputStream outputStream = null;ExcelWriter writer = null;try {outputStream = new BufferedOutputStream(response.getOutputStream());writer = EasyExcelFactory.getWriter(outputStream);List<List<Object>> data = new ArrayList<List<Object>>();for (int i = 0; i < content.size(); i++) {List<Object> item = new ArrayList<Object>();for (int j = 0; j < content.get(i).length; j++) {item.add(content.get(i)[j]);}data.add(item);}writer.write1(data, sheet);outputStream.flush();log.info("excel文件导出成功!");} catch (Exception e) {log.error("excel文件导出失败, 失败原因:{}", e);} finally {try {if (writer != null) {writer.finish();}if (outputStream != null) {outputStream.close();}} catch (IOException e) {log.error("excel文件导出失败, 失败原因:{}", e);}}}
前端请求:
<button type="primary" icon="ios-cloud-download" @click="download_file"style=" color: rgb(255, 255, 255); background-color: rgb(45, 140, 240);border: 1px solid transparent; display: inline-block; margin-bottom: 0px; font-weight: 400; text-align: center; vertical-align: middle; touch-action: manipulation; cursor: pointer; background-image: none; white-space: nowrap; line-height: 1.5; user-select: none; height: 32px; line-height: 32px; padding: 0px 15px; font-size: 14px;border-radius: 4px;">导出数据</button>
download_file(){const url = this.exportUrl+"?orderCode="+this.orderCode+"&productName="+this.productName+"&state"+this.state+"&productCode="+this.productCode+"&mobile="+this.mobile+"&commitTime="+this.commitTime+"&size=10000&page=1";const token = store.getters.access_tokenvar xhr = new XMLHttpRequest();xhr.open('GET', url, true);xhr.setRequestHeader("Authorization", 'Bearer ' + token);xhr.responseType = 'blob';xhr.onload = function (e) {if (this.status == 200) {var blob = e.currentTarget.response;var filename = `productOrderList.xls`;//如123.xlsvar a = document.createElement('a');var url = URL.createObjectURL(blob);a.href = url;a.download=filename;a.click();window.URL.revokeObjectURL(url);}};xhr.send();},
错误在于,,请求的数据时的名字为 var filename = `productOrderList.xls`;//如123.xls 是.xls 而java 中的response.setHeader("Content-disposition",
"attachment;filename=" + new String(fileName.getBytes("gbk"), "iso8859-1") + ".xlsx");为.xlsx 格式不统一,,我的问题就处在这,,,两个后缀统一就没问题了
Java导出Excel,提示格式与文件扩展名不一致相关推荐
- java导出excel 提示文件格式或文件扩展名有误
不同格式的文件响应不同的链接类型. XLSX文件格式的下载 response.setContentType("application/vnd.openxmlformats officedo ...
- 打开excel显示php拓展名,phpexcel 导出excel 因为文件格式或文件扩展名无效,请确定文件未损坏,并且文件扩展名与文件的格式匹配...
phpexcel导出excel:打开出现这个错误,强制打开是乱码 $objPHPExcel =newPHPExcel(); $filename ="test.xls"; heade ...
- 打开EXCEL总提示 您尝试打开的文件*.xls格式与文件扩展名指定的格式不相符
用C#导出来excel,打开时总是有个提示: 您尝试打开的文件"test.xls"的格式与文件扩展名指定的格式不一致.打开文件前请验证文件没有损坏且来源可信.是否立即打开该文件? ...
- Office2007打开文件提示“您尝试打开的文件xxx.xls的格式与文件扩展名指定的格式不一致”的解决办法
原文地址为: Office2007打开文件提示"您尝试打开的文件xxx.xls的格式与文件扩展名指定的格式不一致"的解决办法 打开文件时提示"您尝试打开的文件xxx.xl ...
- et文件怎么转成excel_excel文件打不开提示文件格式或文件扩展名无效
问题桌面右键新建excel文件 打开提示excel报文件格式或文件扩展名无效的问题 解决: 电脑运行输入regedit 进入注册表 定位如下路径: \HKEY_CLASSES_ROOT\.xlsx\E ...
- (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致...
1.打开注册表编辑器 方法:开始 -> 运行 -> 输入regedit -> 确定2.找到注册表子项 HKEY_CURRENT_USER\Software\Microsoft\Off ...
- NPOI 导入导出和Excel版本,错误文件扩展名和文件的格式不匹配
读取时可以自动判断Excel版本 IWorkbook workbook = NPOI.SS.UserModel.WorkbookFactory.Create(fs); 调用这个方法,内部自动判断Exc ...
- Microsoft Excel软件打开文件出现文件的格式与文件扩展名指定格式不一致?
今天winform代码做一个datagridview数据导出功能,导出的excel文件的后缀是*.xls(Micorsoft Excel 2000), 而本机新建的excel文件的后缀是 *.xlsx ...
- java导出excel数字格式_POI 导出excel带小数点的数字格式显示不对解决方法
最近看到了一个问题就是java导出excel中带小数点的数字显示不对, 比如我想在excel中第一行显示: 3,000.0 但是在excle中导出的格式总是不带小数点 3000(非文本格式),而且也 ...
- Microsoft Office Open XML 格式和文件扩展名
从 2007 Microsoft Office system 开始, Microsoft Office 使用基于 XML 的文件格式 (如 .docx..xlsx 和 .pptx). 这些格式和文件名 ...
最新文章
- UVA839 天平 Not so Mobile(二叉树的递归遍历建树并回答问题)
- 分布式并行计算MapReduce
- @scheduled注解配置时间_探究 Spring 的定时任务配置
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(10)-系统菜单栏[附源码]
- android 缩进轮播图,如何利用纯css实现图片轮播
- iOS - Masonry自动布局
- 深入理解CSS六种颜色模式
- mysql语句中变量 c#_C#基础知识-您的第一个C#程序,类型和变量以及流控制语句...
- ASP禁止刷新当前页
- 绝对路径与相对路径cd命令的使用
- 阿里云云计算 15 在线实验--OSS的使用
- Java全套学习资料
- abaqus单位问题
- 计算机学院毕业设计任务书,计算机专业毕业设计任务书.doc
- Python实现将mp3音频格式转换为wav格式
- excel中vba操作文件
- USB-C PD接口DRP芯片功能介绍
- 《构建之法:现代软件工程》阅读提问
- 【文献学习】Complex-Valued Convolutions for Modulation Recognition using Deep Learning
- 基于卡方的独立性检验
热门文章
- Intellij Idea插件开发点滴记录
- 什么是统计学中的 Standard Error ( SE )?
- eCognition软件中ESP2插件的下载与安装
- 微信小程序实战十三:狗狗小程序云搭建
- 【带机器人】在线客服系统多商户客服源码 im即时通讯聊天 带注册 自适应网页 自动回复客服
- “霜降”,“农历”,“二十四节气”,英语怎么说?
- 台式计算机硬盘的尺寸通常为多少英寸,电脑硬件参数之硬盘
- python中fn是什么意思_按Fn键Python 3
- Structure Extraction from Texture via Relative Total Variation
- 软件工程大作业(1)