程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了替换Apache POI XWPF中的文本大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决替换Apache POI XWPF中的文本?

开发过程中遇到替换Apache POI XWPF中的文本的问题如何解决?下面主要结合日常开发的经验,给出你关于替换Apache POI XWPF中的文本的解决方法建议,希望对你解决替换Apache POI XWPF中的文本有所启发或帮助;

您需要的方法是XWPFRun.setText(String)。只需遍历文件,直到找到感兴趣的XWPFRun,确定您想要的新文本,然后替换它即可。(运行是具有相同格式的一系列文本)

您应该能够执行以下操作:

XWPFdocument doc = new XWPFdocument(OPCPackage.open("input.docx"));
for (XWPFParagraph p : doc.getParagraphs()) {
    List<XWPFRun> runs = p.getRuns();
    if (runs != null) {
        for (XWPFRun r : runs) {
            String text = r.getText(0);
            if (text != null && text.contains("needle")) {
                text = text.replace("needle", "haystack");
                r.setText(text, 0);
            }
        }
    }
}
for (XWPFtable tbl : doc.gettables()) {
   for (XWPFtableRow row : tbl.getRows()) {
      for (XWPFtableCell cell : row.gettableCells()) {
         for (XWPFParagraph p : cell.getParagraphs()) {
            for (XWPFRun r : p.getRuns()) {
              String text = r.getText(0);
              if (text != null && text.contains("needle")) {
                text = text.replace("needle", "haystack");
                r.setText(text,0);
              }
            }
         }
      }
   }
}
doc.write(new fileOutputStream("output.docx"));

解决方法

我刚刚发现Apache POI库对于使用Java编辑Word文件非常有用。具体来说,我想使用Apache POI的XWPF类编辑 DOCX
文件。我发现没有适当的方法/文档可以遵循此操作。有人可以分步说明如何替换DOCX文件中的某些文本。

**文字可能在一行/段落或表格的行/列中

提前致谢 :)

大佬总结

以上是大佬教程为你收集整理的替换Apache POI XWPF中的文本全部内容,希望文章能够帮你解决替换Apache POI XWPF中的文本所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: