EasyExcel 学习之 导出 “WPS 表格在试图打开文件时遇到错误”
创始人
2025-01-07 19:36:44
0

目录

    • 1. 版本
    • 2. 现象
      • 2.1. Postman 文件下载成功且 WPS 可以正常打开
      • 2.2. VUE 下载成功但 WPS 无法打开
    • 3. 原因:前端未指定 responseType
    • 4. 常见问题
      • 4.1. NoSuchMethodError
        • 4.1.1. org.apache.logging.log4j.LogBuilder org.apache.logging.log4j.Logger.atTrace()
        • 4.1.2. Could not initialize class org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorkbook

1. 版本

版本
org.springframework.boot:spring-boot-starter-parent2.0.8.RELEASE
com.alibaba:easyexcel4.0.0

特别注意:不同的 Springboot 版本可能现象不同,2.7.14 就是可以的。

2. 现象

EasyExcel # Issue

本人在使用 EasyExcel 导出 xls 文件后,通过 WPS 打开文件,呈现两种情况:

2.1. Postman 文件下载成功且 WPS 可以正常打开

在这里插入图片描述

一般情况下导出下载只能通过 GET 方法触发,但是实际中前端可以通过一些代码逻辑模拟 GET 下载,即上图所示 POST 下载。

2.2. VUE 下载成功但 WPS 无法打开

在这里插入图片描述

3. 原因:前端未指定 responseType

Axios 中,responseType 是一个非常重要的配置项,它用于告诉 Axios 你期望从服务器接收到的响应数据类型。

常见的 responseType 值及其用途:

适用场景备注
json默认)用于解析JSON数据
blob下载文件,二进制数据因为 Blob 对象可以被用来创建一个指向该文件内容的 URL,进而触发浏览器的下载行为或者在页面上展示文件内容
arraybuffer图片、音频、视频等二进制文件
documentXML文档
text纯文本数据
stream流数据

4. 常见问题

4.1. NoSuchMethodError

4.1.1. org.apache.logging.log4j.LogBuilder org.apache.logging.log4j.Logger.atTrace()
4.1.2. Could not initialize class org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorkbook
 	org.apache.logging.log4j 	log4j-api 	2.21.1 	compile  

相关内容

热门资讯

【C++】C语言和C++的区别 目录面向过程 vs 面向对象类和对象继承多态模板异常处理标准库内存管理命名空间运算符重载构造函数和析...
《人生苦短,我用python·... 基本异常处理 Python 提供了 try…except 语句来处理异常。其基本结构如下࿱...
基于搜索二叉树的停车收费管理系... 系统效果:录入汽车信息查看汽车信息收费信息查看查询车库车辆 代码展示: ...
玩家必看攻略!(WPK小程序)... 玩家必看攻略!(WPK小程序)透视辅助!(透视)外挂辅助工具(2025已更新)(哔哩哔哩);1、这是...
安全防御---防火墙实验1 安全防御—防火墙实验1一、实验拓扑与要求要求:1、DMZ区内的服务器,办...
揭秘真相wpk安卓版本原来是真... 揭秘真相wpk安卓版本原来是真的有挂,太坑了其实确实真有挂(有挂技术)-哔哩哔哩;致您一封信;亲爱w...
LeetCode 算法:全排列... 原题链接🔗:全排列难度:中等⭐️⭐️题目给定一个不含重复...
电脑显示mfc140u.dll... mfc140u.dll是什么?为什么电脑会出现mfc140u.dll丢失?...
总结辅助挂微扑克代打原来是真的... 总结辅助挂微扑克代打原来是真的有挂,太过分了原来是有挂,详细教程(有挂秘笈);超受欢迎的微扑克稳赢小...
Pod亲和性、Pod反亲和性、... 一、Pod亲和性  pod亲和性的对象为Pod,目的是实现,新建Pod和...