Freemarker 模板导出word踩坑记录

本文档详细记录了使用Java和Freemarker模板在导出Word文档时遇到的问题,包括单元格合并操作的难点、导出文件无法打开的Office Open XML问题、特殊字符导致的文件打开错误以及内容乱码的解决方法。
摘要由CSDN通过智能技术生成

文章仅记录java使用freemarker模板导出Word文档所踩的坑以及一些常用操作。

  1. 常见操作
// if 判断 字符串是否存在于左侧字符串内
<#if "a,b,c"?contains("currentPosition")>

</#if>

// 判定List是否存在下一条 用于判定是否是最后一条记录 其中jianLi为集合 集合名后加_has_next判定是否存在下一条
<#if !jianLi_has_next >

</#if>

// 获取集合下标 其中jianLi为集合 集合名后加_index获取集合下标  下标数从0开始
<#if jianLi_index != 0 >

</#if>

// 获取集合条数 其中jianLi为集合 集合名
<#if (jianLi?size !=0)>

</#if>

// 循环实体类列表
<#list cadreDataList as cadreDataList>

</#list>

// 循环字符串列表
<#list annexNameList as annexName>
    ${annexName}
</#list>

// 判断是否为空字符串
<#if roster.companyValueCompile != "">

</#if>

  1. 单元格合并操作
// 单元格合并开始
<w:vmerge w:val="restart" />
// 单元格合并结束
<w:vmerge />

// 示例 注意存放位置及字母大小写
<#if jianLi_index == 0>
	<w:tc>
		<w:tcPr>
			<w:tcW w:w="736" w:typ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值