我想删除docx中的特定行,如果它有特定的单词,请说" killer"。我如何使用poi xwpf编写程序?如果我用空数据替换它,那么该行仍将存在。
实际上我能够找到docx文件中的特定文本,以便我可以匹配并决定是否使用以下代码删除该特定行:
for (XWPFParagraph xwpfParagraph : xwpfParagraphs) {
List<XWPFRun> xwpfRuns = xwpfParagraph.getRuns();
for (XWPFRun xwpfRun : xwpfRuns) {
String xwpfRunText = xwpfRun.getText(xwpfRun
.getTextPosition());
System.out.println(xwpfRunText);
for (Map.Entry<String, String> entry : replcementMap
.entrySet()) {
if (xwpfRunText != null
&& xwpfRunText.contains(entry.getKey())) {
xwpfRunText = xwpfRunText.replaceAll(
entry.getKey() , entry.getValue());
}
}
xwpfRun.setText(xwpfRunText, 0);
}
}
答案 0 :(得分:0)
我遇到了同样的问题。我想替换doc文件中的文本。 这是一个很好的例子: http://moodygeeky.wordpress.com/ 只需导入2类:
There are 2 classes:
ZipUtility - 处理文件的压缩和解压缩
SubstituteText - 用于替换.docx文件中的文本
并将这些字符串替换为您的首选项:
// Names of placeholders, starting and ending with % (to be updated
// accordingly)
String placeholder1 = "%name%";
String placeholder2 = "%text%";
// Values to replace placeholders (to be updated accordingly)
String var1 = escapeHTML("newName"); // %name%
String var2 = escapeHTML("newText"); // %text%