WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(new java.io.File(templatePath));
MainDocumentPart documentPart = wordMLPackage.getMainDocumentPart();
HashMap<String, String> mappings = new HashMap<String, String>();
mappings.put("years", "2021");
mappings.put("month", "9月\n8月");
mappings.put("day", "3");
documentPart.variableReplace(mappings);
如上代码,在执行时 ,9月和8月间并不会换行,而是输出\n ;
输出如下:
9月\n8月
解决方案:
String skip = "</w:t> " +
" </w:r> " +
" </w:p> " +
" <w:p/> " +
" <w:p> " +
" <w:pPr> " +
" <w:ind w:firstLine=\"420\" w:firstLineChars=\"200\"/> " +
" <w:rPr> " +
" <w:rFonts w:hint=\"eastAsia\" w:ascii=\"华文楷体\" w:hAnsi=\"华文楷体\" w:eastAsia=\"华文楷体\"/> " +
" <w:szCs w:val=\"21\"/> " +
" </w:rPr> " +
" </w:pPr> " +
" <w:r> " +
" <w:rPr> " +
" <w:rFonts w:hint=\"eastAsia\" w:ascii=\"华文楷体\" w:hAnsi=\"华文楷体\" w:eastAsia=\"华文楷体\"/> " +
" <w:szCs w:val=\"21\"/> " +
" </w:rPr> " +
" <w:t>";
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(new java.io.File(templatePath));
MainDocumentPart documentPart = wordMLPackage.getMainDocumentPart();
HashMap<String, String> mappings = new HashMap<String, String>();
mappings.put("years", "2021");
mappings.put("month", "9月"+skip+"8月");
mappings.put("day", "3");
documentPart.variableReplace(mappings);
此时,输出的内容间就换行了。
注意:
1. 华文楷体 这里的设置,要根据自身使用的格式来设置;
2. <w:ind w:firstLine=\"420\" w:firstLineChars=\"200\"/> 这里的设置也要根据自己的实际使用来设置;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)