world模板生成ftl文件

需求:

需要将world模板生成ftl文件然后进行操作ftl文件,再生成word文件。

问题:

使用freemarker会以   .ftl   文件为模板,刚开始接触还不知道怎么生成ftl文件,百度之后才发现可以进行如下操作:

 

解决方法:

首先创建一个world文档并编辑成自己需要的模板,然后点击保存成 world xml格式,然后修改后缀名为.ftl即可,

就这样一个.ftl 文件就生成了。

使用技巧:

增加换行:后台可以在换行出添加<w:br/>

添加空格:&#160;

显示特殊字符:${xxx?html!}       ?html显示特殊字符   !非空验证

日期转换:${xxx!?string("EEEE")} 日期转换成星期几(这个转换形式与jstl标签中的fmt标签很相似,以后数据转换可以参考fmt标签来进行转换)

 

下面是我是我--创建word模板--->>生成ftl文件-->>Java代码编辑ftl文件--->>生成编辑后的word文件

url:

 

 

 

 

 

 

 

 

参考:https://blog.csdn.net/u012129030/article/details/90489296

 

 

 

以下是一个使用FreeMarker和Apache POI生成Word文档的Java代码示例: ```java import freemarker.template.Configuration; import freemarker.template.Template; import freemarker.template.TemplateException; import org.apache.poi.xwpf.usermodel.XWPFDocument; import org.apache.poi.xwpf.usermodel.XWPFParagraph; import org.apache.poi.xwpf.usermodel.XWPFRun; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; import java.nio.charset.StandardCharsets; import java.util.HashMap; import java.util.Map; public class FtlToWordDemo { public static void main(String[] args) throws IOException, TemplateException { // 模板文件名和数据模型 String templateFileName = "template.ftl"; Map<String, Object> dataModel = new HashMap<>(); dataModel.put("title", "测试标题"); dataModel.put("content", "测试内容"); // FreeMarker配置 Configuration configuration = new Configuration(Configuration.DEFAULT_INCOMPATIBLE_IMPROVEMENTS); configuration.setDefaultEncoding(StandardCharsets.UTF_8.name()); // 加载模板文件 Template template = configuration.getTemplate(templateFileName); // 生成Word文档 XWPFDocument document = new XWPFDocument(); XWPFParagraph paragraph = document.createParagraph(); XWPFRun run = paragraph.createRun(); run.setText("Hello World!"); // 填充模板 OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream(new File("output.docx")), StandardCharsets.UTF_8); template.process(dataModel, writer); writer.close(); } } ``` 在这个示例中,我们使用FreeMarker来加载模板文件,然后将数据模型填充到模板中,最后使用Apache POI来生成Word文档。在实际使用中,你需要根据实际的需求来修改模板和数据模型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值