java生成word文档,超简单,超实用!
最近在开发项目的时候,需要将数据生成word文档保存/下载,下面就来介绍下如何java生成word文档的步骤,亲测可用!
1、引入pom包
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.23</version>
</dependency>
2、制作word模板文件:
1、在指定目录新建一个word文档,在文档中写入如下内容:
姓名:${name}
2、将word文档另存为.xml文件
3、上java代码
import freemarker.template.Configuration;
import freemarker.template.Template;
import java.io.*;
import java.util.HashMap;
import java.util.Map;
public class WordTest {
public static void genWord(){
try {
Map<String,String> dataMap = new HashMap<>();
dataMap.put("name", "张三");
Configuration configuration = new Configuration();
configuration.setDefaultEncoding("utf-8");
//.xml 模板文件所在目录
configuration.setDirectoryForTemplateLoading(new File("H:\\workFile\\genword\\template"));
// 输出文档路径及名称
File outFile = new File("H:\\workFile\\genword\\word\\test.doc");
//以utf-8的编码读取模板文件
Template t = configuration.getTemplate("test.xml","utf-8");
Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile), "utf-8"),10240);
t.process(dataMap, out);
out.close();
System.out.println("生成成功");
}catch (Exception e){
e.printStackTrace();
System.out.println("生成失败");
}
}
public static void main(String[] args) {
genWord();
}
}
4、运行代码
看到如下即完成word生成
到目录下查看生成结果