Java导出Excel解决乱码及导出文件打开不可读需修复的问题
导入包,本来自己也不想用poi处理的,怎奈不知道为什么自己用流导出总是会报错不可读,所以还是简单点吧:
<dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.9</version>
</dependency>
工具代码:
public class FileUtil {public static void download(String filename, HttpServletResponse res) {String filePath = "./template/" + filename;try (OutputStream os = res.getOutputStream(); InputStream bis = new BufferedInputStream(new ClassPathResource(filePath).getInputStream())){// 设置信息给客户端不解析String type = new MimetypesFileTypeMap().getContentType(filename);// 设置content-type,即告诉客户端所发送的数据属于什么类型res.setContentType(type);// 设置编码String name = URLEncoder.encode(filename, "UTF-8");// 设置扩展头,当Content-Type 的类型为要下载的类型时 , 这个信息头会告诉浏览器这个文件的名字和类型。res.setHeader("Content-Disposition", "attachment;filename=" + name);XSSFWorkbook workbook = new XSSFWorkbook(bis);workbook.write(os);}catch (Exception e){e.printStackTrace();}}}
重点是这句:XSSFWorkbook workbook = new XSSFWorkbook(bis);
文件所在位置:
关注公众号获取更多内容,有问题也可在公众号提问哦:
强哥叨逼叨
叨逼叨编程、互联网的见解和新鲜事
Java导出Excel解决乱码及导出文件打开不可读需修复的问题相关推荐
- java导出excel文件名乱码_Poi生成excel文件名乱码问题的解决方案
Poi是不错的java操作excel的包,开发过程中遇到生成excel文件名乱码.sheet表名乱码的问题,在这里我给大家一个完整的解决方案. 首先我们要写一个生成excel的模板.新建如下servl ...
- java导出excel文件名_怎么解决java导出excel时文件名乱码
怎么解决java导出excel时文件名乱码 发布时间:2020-06-19 16:59:00 来源:亿速云 阅读:137 作者:元一 java解决导出Excel时文件名乱码的方法示例:String a ...
- php excelreader 中文,如何解决php excel reader导出excel中文乱码?
解决php excel reader导出excel中文乱码的方法:1.如果不使用dump函数,可以通过修改[_defaultEncoding]变量解决问题:2.如果使用dump函数导出excel,需要 ...
- java文件无法导出excel文件,【excel表格文件格式无效】java导出excel,excel打不开,报文件格式无效,怎么解决!...
excel提示 打开的文件.xls的格式与文件扩展名不一致怎么办 如果打开文件的格式与文件的扩展名不一致,只要能够打开就不用去管他. java导出excel,excel打不开,报文件格式无效,怎么解决 ...
- php导出excel出现乱码,php导出数据到excel出现乱码的解决办法
代码如下: 代码示例: /** * 导出数据到excel 解决乱码问题 * Edit www.# */ function xlsBOF() { echo pack("ssssss" ...
- 利用ajax实现excel报表导出(解决乱码问题)
利用ajax实现excel报表导出[解决乱码问题] 背景 第一版 主要代码 测试结果 第二版 主要代码 测试结果 总结 背景 项目中遇到一个场景,要导出一个excel报表.由于需要token验证,所以 ...
- java导出excel数字格式_POI 导出excel带小数点的数字格式显示不对解决方法
最近看到了一个问题就是java导出excel中带小数点的数字显示不对, 比如我想在excel中第一行显示: 3,000.0 但是在excle中导出的格式总是不带小数点 3000(非文本格式),而且也 ...
- java导出Excel增加下拉框选项,解决小数据量和大数据量下拉框选项的问题
文章目录 java导出Excel增加下拉框选项 一.小数据量情况 二.大数据量情况 java导出Excel增加下拉框选项(java结合easyExcel) 添加传参模型ConsumablesAddDT ...
- java导出excel无法打开
如果你在使用 Java 导出 Excel 文件但是打开后出现了无法打开的问题,可能是出现了以下几种情况: 文件损坏:Excel 文件在生成和传输过程中可能已损坏,导致无法打开. 版本问题:生成的 Ex ...
最新文章
- Swift中的全局常量文件
- centos7离线安装metasploit
- java--static关键字
- Machine Learning 网络资源
- python 财务报表审计_用Python来分析审计行业的这10年
- 小程序 setData 中的坑,其实好像...
- android studio 跨进程,Android IPC机制(三)在Android Studio中使用AIDL实现跨进程方法调用...
- Linux访问其他进程空间,Linux环境进程间通信系列(五):共享内存
- 机器学习笔记II: 决策树
- 安庆师范大学计算机学院书记,安庆师范大学计算机与信息学院导师教师师资介绍简介-施赵媛...
- bzoj:1922: [Sdoi2010]大陆争霸 (luogu 2446)
- Kettle的Web版分享
- SIEBEL功能组件,eScript入门
- UC号、百家号,为什么这些科技公司都押注“内容”?
- es如何提升写入性能
- Lua--pairs和ipairs遍历区别
- mysql get seq no_mysql的存储怎么写?帮我看看我这个写的哪里有问题?谢谢
- eclipse中没有SVN,安装SVN
- 触发器原理与使用方法
- asp前端日历_ASP.NET 日历
热门文章
- F. Multi-Colored Segments
- vvic/搜款网API接口(item_get-根据ID取商品详情)
- 移动4G网络App页面加载时间过长
- IOS学习笔记56-IOS7状态栏适配方法一
- YGG 与 Trial Xtreme 合作,快速进入极限赛车世界
- 【comsol学习1】-电化学模块学习与运行错误之橙子电池
- flask、celery+redis 实现定时任务和异步——(一)
- android动态设置textview的id,动态调整TextView的Gravity
- Windows Server 2012 R2安装域控制器完整版
- 1---电子实物认知