jxls:用jx:if实现字典值格式化

用JXLS导出excel非常方便,但是我们往往需要把字典值转为中文名称,例如1转为男,这个时候就需要用到jx:if来完成.

请见下图:

image

jx:if(condition="obj.way==1",lastCell="AF2",areas=["H2:H2"]) jx:if(condition="obj.way==2",lastCell="AF2",areas=["I2:I2"]) jx:if(condition="obj.way==3",lastCell="AF2",areas=["J2:J2"]) jx:if(condition="obj.way==4",lastCell="AF2",areas=["K2:K2"]

转换值在areas中定义,随着转换值不断添加,lastCell也要发生相应的变化!

在用 jx:if输出后,其后单元格输出时,不能仅用用${obj.classHour}这种方式输出,还得加上:

image

jx:area(lastCell="F2") jx:each(items="list" var="obj" lastCell="F2")

导出Excel截图:

image

开头定义

image

image

如果不需要转换,每个单元格直接用${obj.xxxxx}方式填充即可,一旦用到了jx:if,后面的单元格必须用上面方式输出.

示例XML下载地址: https://files.cnblogs.com/files/huiy/tpl-course.zip

 

posted @   huiy_小溪  阅读(7589)  评论(2编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
历史上的今天:
2017-09-03 thymeleaf:字符串拼接+输出单引号
点击右上角即可分享
微信分享提示