Java学习之导出word文档
2021/9/15 22:08:22
本文主要是介绍Java学习之导出word文档,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
关键对象:Poi-tl Documentation
学习路径:http://deepoove.com/poi-tl/#_why_poi_tl
代码Demo:
public static void main(String[] args) { HashMap<String, Object> dataMap = new HashMap<>(); Map<String, Object> data = new HashMap<String, Object>(); ArrayList<Map<String, Object>> dataList = new ArrayList<>(); //封装数据 data.put("username", "demo"); data.put("password", "001"); data.put("head", Pictures.ofLocal("C:\\Users\\Pictures\\Saved Pictures\\ais.jpg") .size(35, 35).create()); dataList.add(data); //key要和模板中的开始结束标签保持一致 dataMap.put("wordExportTemp", dataList); try { String res = wordUtil.tempRender(dataMap); System.out.println(res); } catch (Exception e) { System.out.println("Fail"); } }
public class wordUtil { public static String tempRender(HashMap<String, Object> dataMap) throws Exception { //模板文件 String inPut = "D:\\tempword\\data\\wordFile.docx"; //生成文件 String outPut = "D:\\tempword\\data\\2021-09-15\\exportWord.docx"; //获取模板文件数据 XWPFWordExtractor extractor = new XWPFWordExtractor(OPCPackage.open(new FileInputStream(inPut))); //获取String型模板数据 System.out.println(extractor.getText()); FileOutputStream outputStream = new FileOutputStream(outPut); //用来 ConfigureBuilder builder = Configure.builder(); //用默认的方式抛出异常 builder.useDefaultEL(true); //匹配除了标签前后缀外的任意字符 builder.buildGrammerRegex(RegexUtils.createGeneral("{{", "}}")); //创建结果对象 XWPFTemplate docx = XWPFTemplate.compile(inPut,builder.build()); //数据渲染 docx.render(dataMap); //数据写出 docx.write(outputStream); outputStream.flush(); outputStream.close(); docx.close(); return "OK"; } }
模板:
注意:{{?wordExportTemp}} 中的“wordExportTemp”要和封装数据Map的“key"保持一致!
结果
这篇关于Java学习之导出word文档的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-29RocketMQ底层原理资料详解:新手入门教程
- 2024-11-29RocketMQ源码资料解析与入门教程
- 2024-11-29[开源]6.1K star!这款电视直播源神器真的太赞啦!
- 2024-11-29HTTP压缩入门教程:轻松提升网页加载速度
- 2024-11-29JWT开发入门指南
- 2024-11-28知识管理革命:文档软件的新玩法了解一下!
- 2024-11-28低代码应用课程:新手入门全攻略
- 2024-11-28哪些办公软件适合团队协作,且能够清晰记录每个阶段的工作进展?
- 2024-11-28全栈低代码开发课程:零基础入门到初级实战
- 2024-11-28拖动排序课程:轻松掌握课程拖动排序功能