
- 先把排版好的word另存为xml格式
- 然后把替换的内容使用${}标签替换掉,后缀改成ftl,放到项目中。
-
代码
private static void genWord(Map<String, Object> map) { try { Configuration configuration = new Configuration(new Version(2, 3, 23)); configuration.setDefaultEncoding("UTF-8"); configuration.setClassForTemplateLoading(GenWordUtils.class, "/"); // FTL文件所存在的位置 Template template = configuration.getTemplate("aa.ftl"); File outFile = new File("D:/doc/" + map.get("fileName") + ".doc"); if (!outFile.exists()) { outFile.createNewFile(); } Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile), "UTF-8")); template.process(map, out); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { //需要替换的键值 Map<String, Object> map = Maps.newHashMap(); map.put("client", "张三"); map.put("country", "中国"); genWord(map); }




近期评论