当前位置:   article > 正文

java替换word表格_Java Poi Word模板内容替换【段落,表格】

java 更新work模板内容

1 importjava.io.IOException;2 importjava.math.BigInteger;3 importjava.util.ArrayList;4 importjava.util.HashMap;5 importjava.util.Iterator;6 importjava.util.List;7 importjava.util.Map;8 importjava.util.regex.Matcher;9 importjava.util.regex.Pattern;10

11 importorg.apache.poi.POIXMLDocument;12 importorg.apache.poi.openxml4j.opc.OPCPackage;13 importorg.apache.poi.xwpf.usermodel.XWPFDocument;14 importorg.apache.poi.xwpf.usermodel.XWPFParagraph;15 importorg.apache.poi.xwpf.usermodel.XWPFRun;16 importorg.apache.poi.xwpf.usermodel.XWPFTable;17 importorg.apache.poi.xwpf.usermodel.XWPFTableCell;18 importorg.apache.poi.xwpf.usermodel.XWPFTableRow;19 importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTblWidth;20 importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTcPr;21 importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STTblWidth;22

23 /**

24 *25 *@authorunknown26 * @Date 2020年3月2日27 * @Time 下午1:41:3128 */

29 public classWord {30 /**

31 * 占位符初始依赖32 */

33 public static final String Symbol="$";34 /**

35 * 验证主体36 */

37 public static final Pattern findBody=Pattern.compile("(\\?\\{)([a-zA-Z0-9]+)(})".replace("?", Symbol));38 /**

39 * 验证附属主体-后半段40 */

41 public static final Pattern surplus=Pattern.compile("(\\{[a-zA-Z0-9]+}|[a-zA-Z0-9]+})");42 /**

43 * 文档主体-占位符确定后的截取行为依赖44 */

45 public static final Pattern keyInfo=Pattern.compile("[a-zA-Z0-9]+");46

47 /**

48 *49 *@authorunknown50 * @Date 2020年3月2日51 * @Time 下午1:42:1752 *@paramfileName 模板数据53 *@parammap 数据格式为Map54 *@paramempty 查找不到数据时用的占位55 *@paramignorecase 忽略大小写56 *@return

57 *@throwsIOException58 */

59 public static final XWPFDocument searchAndReplace(String fileName,Map map, String empty,boolean ignorecase) throwsIOException {60 returnsearchAndReplace(POIXMLDocument.openPackage(fileName),map,empty,ignorecase);61 }62 /**

63 * poi 查找word中占位符并替换64 *@authorunknown65 * @Date 2020年3月2日66 * @Time 下午1:41:4067 *@paramoPCPackage 模板数据68 *@parammap 数据格式为Map69 *@paramempty 查找不到数据时用的占位70 *@paramignorecase 忽略大小写71 *@return

72 *@throwsIOException73 */

74 public static final XWPFDocument searchAndReplace(OPCPackage oPCPackage,Map map, String empty,boolean ignorecase) throwsIOException {75 return searchAndReplace(newXWPFDocument(oPCPackage),map,empty,ignorecase);76 }77 /**

78 * poi 查找word中占位符并替换79 *@authorunknown80 * @Date 2020年2月28日81 * @Time 下午1:59:1982 *@paramDocument 模板数据83 *@parammap 数据格式为Map84 *@paramempty 查找不到数据时用的占位85 *@paramignorecase 忽略大小写86 *@returnXWPFDocument87 *@throwsIOException88 */

89 public static final XWPFDocument searchAndReplace(XWPFDocument Document,Map map, String empty,boolean ignorecase) throwsIOException {90 //对单行中存在多个的进行再次捕捉&#x

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/685365
推荐阅读
相关标签
  

闽ICP备14008679号