一、java生成word文档
java生成word文档常用的两种方式:
(1)apache下的poi类库处理office文档
(2)freemarker编辑word文件转换的xml文件
通过网上了解,第(1)种方式使用poi操作数据相对麻烦些,对于word07兼容些好些,第(2)种方式使用freemarker的标签处理数据极为方便,生成doc格式文件不会有兼容问题,但是生成docx文件会有兼容性问题,office07以上版本不能直接打开(wps不受影响),不过可以通过程序进行另存为高版本即可解决
下面使用freemarker生成word文件:
导入依赖包:
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.28</version>
</dependency>
1.将需要生成word文件另外为xml格式(word XML或word 2003 XML都可以),用文本管理器打开会发现xml标签内容的文件啦,可以在里面写freemarker标签了
2.将xml后缀名改成ftl后缀
3.使用freemarker对ftl文件进行渲染
import freemarker.template.Configuration;
import freemarker.template.Template;
import java.io.*;
/**
* 创建word文件
* @param clazz
* @param path 模板文件所在路径
* @param template 模板文件名
* @param newWordName 生成的文件名
* @param dataMap 渲染数据
*/
public static void generateWord(Class clazz, String path,String