paragraph.getRuns()分隔段落

时间:2014-12-02 07:10:17

标签: apache-poi

当我使用Apache poi自动更改合同的日期时,我对dose.getRuns()如何分开段落非常困惑。我有以下段落 自2014年10月1日起至2014年10月31日止

我使用以下代码查看paragraph.getRuns()返回的XWPFRun的数量

String currentParagraph = "";
                for(XWPFRun xwpfRun : paragraph.getRuns()){
                    currentParagraph += xwpfRun.getText(0);
                    System.out.println(currentParagraph);
                }

我发现前五个数字都是xwpfRun,例如,2014,10,1 但最后一个数字“31”分为两个xwpfRun:“3”和“1”;

这使得很难通过xwpfRun更改日期,我想知道如何处理这个以及paragraph.getRuns()如何工作?

1 个答案:

答案 0 :(得分:0)

有时,DOCX文件中的文本会被分解为任意数量的运行。虽然不方便,但处理起来并不困难。

解决方案是迭代段落中的所有运行,并将每个文本的文本连接到一个字符串。然后,更新日期并将其存储为第一次运行的文本。最后,您可以删除或将其他运行中的文本设置为“”。