使用hutool的导出Excel后缀xlsx
首先引入hutool和poi-ooxml依赖
<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.3</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>4.1.2</version></dependency>
代码如图所示: 具体请参考hutool官网
文件转成流工具
public class BigExcelUtils {public static InputStream convertToInputStream(SXSSFWorkbook workbook) throws IOException {ByteArrayOutputStream byteArrayOutputStream = null;try {byteArrayOutputStream = new ByteArrayOutputStream();workbook.write(byteArrayOutputStream);byteArrayOutputStream.flush();byte[] bytes = byteArrayOutputStream.toByteArray();ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);return byteArrayInputStream;} catch (Exception e) {e.printStackTrace();throw e;} finally {if (byteArrayOutputStream != null) {byteArrayOutputStream.close();}if (workbook != null) {workbook.dispose();workbook.close();}}}
}
Excel导出示例:
@Autowired
private OSSFactoryConfig ossFactory;public void export(HttpServletResponse response) throws IOException {List<User> us = new ArrayList<>();User user = new User();user.setName("张三");user.setAge(23);user.setScore(88.32);user.setPass(true);user.setTestDate(DateUtil.date());us.add(user);User user2 = new User();user2.setName("李四");user2.setAge(33);user2.setScore(88.32);user2.setPass(false);user2.setTestDate(DateUtil.date());us.add(user2);List<Object> rows = CollUtil.newArrayList(us.toArray());ExcelWriter writer = ExcelUtil.getWriter(true);writer.write(rows, true);try {InputStream inputStream = BigExcelUtils.convertToInputStream((SXSSFWorkbook) writer.getWorkbook());String excelName = "测试导出";// 上传阿里云 拿到文件全路径String url = ossFactory.build().upload(inputStream, excelName + ".xlsx");// 导出成功} catch (IOException e) {e.printStackTrace();} finally {// 关闭writer,释放内存writer.close();}}
注意 ExcelUtil.getWriter()默认创建xls格式的Excel,因此写出到客户端也需要自定义文件名为XXX.xls,否则会出现文件损坏的提示。 若想生成xlsx格式,请使用ExcelUtil.getWriter(true)创建。具体见hutool官网
使用hutool的导出Excel后缀xlsx相关推荐
- Java集成Hutool实现导出Excel功能
原文来自:https://www.j1angrui.cn/article/2019081623 在工作中刚完成项目集成Hutool实现导出Excel功能,现在记录一下实现过程,方便以后作为例子参考. ...
- hutool工具 导出excel
hutool工具 导出excel 前言 一.pandas是什么? 二.步骤 1.依赖导入 每日鸡汤 前言 本周接到导出数据到excel的任务,第一次写还是很感兴趣的,写完感觉很简单 需求场景:根据时间 ...
- 使用hutool工具导出Excel标题自定义顺序
使用hutool工具导出Excel标题自定义顺序 在自定义别名的时候,map要使用有顺序的 LinkedHashMap(hutool工具:MapUtil.newHashMap(true)) Map&l ...
- 前端导出excel(element+xlsx+filesaver插件),表格数据重复问题解决
纯前端导出excel,表格数据渲染重复 业务需求 页面有table表格里的多条数据,并且没有分页.需求希望不调用接口,纯前端生成excel文件实现导出功能. 效果图 1.安装依赖(xlsx 和 fil ...
- hutool工具 导出excel 自定义样式------excel压缩jar
默认样式导出 //excel public void test() {//随机值String fileUuid = UuidKit.getUUIDNoMinus();String path = (Pa ...
- DevExpress 自带的导出EXCEL xls xlsx
SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.Title = "导 ...
- electron中表格导出excel使用XLSX.writeFile 更改写入位置方法
问题 Vue项目集成为exe程序 使用electron,但是在web端可以使用的XLSX.writeFile会调用网页端保存文件API选择保存位置 在electron环境下生成的文件自动保存在工作目录 ...
- POI 导出excel ,xlsx 公式多个下拉框 XSSF
业务需求需要导出Excel,然而xls部分公式无法使用,且导出效率和行数有限制,因此更换导出文件为xlsx,下拉框个数根据参数传入.代码写得有点乱,如下代码为导出excel xlsx格式的代码 /** ...
- hutool导入导出excel
hutool工具 https://www.hutool.cn/docs/#/poi/Excel%E5%B7%A5%E5%85%B7-ExcelUtil pom依赖 <dependency> ...
最新文章
- python和c哪个适合入门-关于python和c语言学哪个好
- Angular2.x-主/细节组件
- 将图片转存为其它颜色格式(GDI+)
- python返回负数_在Python中三角函数sin返回负数
- android elf 加固_Android常见App加固厂商脱壳方法的整理
- java socket 消息中转,Java中Socket实现消息传输(传输原型)
- 目标检测——感受野的学习笔记
- 汽车编程都是用matlab,MATLAB编程与汽车仿真应用
- 极简Markdown程序员简历模板
- 运用现代信息技术 推进环评大数据建设
- KEIL C51出现 runtime error R6002 floating point support not loaded解决办法
- 超级详细的手把手教你使用Lighthouse更好推动项目性能优化,性能指标详解,优化方法,需要关注指标分析
- 图片验证码实现的几种方式
- 网络能搜索计算机但不能连接不上,笔记本能搜到无线网络但连接不上怎么办
- Apple应用证书申请过程
- mysql master thread_Mysql的InnoDB引擎-3.CheckPoint手艺、Master Thread
- 网易2016研发工程师编程题--完全解析
- c语言 北京时间转换utc时间_UTC时间转换成北京时间C语言函数代码
- 音视频基础知识——素材理解
- 基于容积卡尔曼滤波(CubatureKalmam Filter, CKF)的车辆状态观测器 Carsim与Simulink联合 可生成C代码