解决easyExcel模板填充时转义字符\{xxx\}失效

正常我们在使用easyExcel进行模板填充时,定义的变量会填充好对应的实际数据,未定义的变量会被清空,但是如果这个未定义的变量其实是模板的一部分,那么清空了就出错了。

在这张图里,上面的是模板填充后导出的文件,下面的是模板文件,而{xxx}就是未定义的变量。

当我们想让一个变量不必填充而以原形式保留时,根据官方文档的说法,我们可以用转义字符"\"来实现这个效果:

但是实际上,当单元格里只有一个变量{}时,转义字符"\"会跟着一起保留下来,如下:

只有当单元格里有另外一个不需要转义的变量存在时,这个单元格里需要转义的变量才能正常转义成功,如下:

那如果单元格里只有一个变量,我们也只想保留单元格里这个转义后的变量,那就可以用到之前听到的未定义的变量{xxx}(这个xxx可以是任何未定义的变量,可根据需要换成其他合适的名称),转义的变量\{\}保留,{xxx}则清空。同样的,如果{xxx}是模板的一部分我们需要保留,也可以用这个方法:

参考:

填充Excel | Easy Excel

解决模板Cell中单纯`\{name\}`,无法有效转换为`{name}`的问题。 by gongycn · Pull Request #3095 · alibaba/easyexcel · GitHub

模板{}转义问题,转义符会保留 · Issue #3356 · alibaba/easyexcel · GitHub

相关推荐
芯片智造几秒前
在HKMG工艺中,为什么不能再用多晶硅做栅极?
经验分享·芯片·半导体
♡喜欢做梦2 分钟前
MyBatis操作数据库(进阶):动态SQL
java·数据库·sql·java-ee·mybatis
祝威廉3 分钟前
InfiniSynapse: 把PDF里的表格和Excel/业务数据联合分析
pdf·excel
承缘丶4 分钟前
Excel字段清单转各类数据库建表语句的工具(开箱即用)
数据库·excel·excel转数据库建表语句
lusasky5 分钟前
com.itextpdf堆外内存(Off-Heap Memory)泄露
java
.豆鲨包5 分钟前
【Android】深入理解Window和WindowManager
android·java
Dylan的码园5 分钟前
ArrayList与顺序表
java·数据结构·链表
Boop_wu6 分钟前
[Java EE] 文件操作(系统文件和字节流字符流)
java·java-ee
Aevget6 分钟前
「Java EE开发指南」如何在MyEclipse中开发EJB 2 Session Bean?(二)
java·ide·java-ee·开发工具·myeclipse
带刺的坐椅6 分钟前
Solon AI 开发学习11 - chat - 工具调用与定制(Tool Call)
java·ai·llm·solon