我正在使用 docx4j 来读取和解析 .docx 文件,但是当我遍历段落时,它不是一次性读取所有段落。下面是我正在使用的代码示例。
private void replaceAcrAndDef(String acrName, String acrParensName, String oldDef, String newDef){
String XPATH_TO_SELECT_TEXT_NODES = "//w:t";
List<Object> paragraphs = template.getMainDocumentPart().getJAXBNodesViaXPath(XPATH_TO_SELECT_TEXT_NODES, true);
for (Object obj : paragraphs){
Text text = (Text) ((JAXBElement)obj).getValue();
String textValue = text.getValue();
System.out.println(textValue);
}
在上面的 for 循环的一次通过中,这将读作第一段 -
“团队通过对任务、测试、行政和一般服务网络和系统有直接的 MDA 经验,对要求有深刻的理解。重新建立一个对任务、流程和优先事项有深入了解的低风险、反应迅速的团队的好处。我们的综合利用"
但它缺少该段落的最后部分。这将在连续传球中出现。我在这里做错了什么。
该段的全部内容是:
团队通过对任务、测试、行政和一般服务网络和系统有直接的 MDA 经验,对要求有深刻的理解。这样做的好处是风险低、反应迅速的团队,对使命、流程和优先事项有明确的了解。我们使用基于集成信息技术的基于角色的管理 (RBA) 方法与相关承包商、现有流程和我们的补充流程协同工作。
我不知道是否有办法获取整个段落,但如果有的话会很好,因为我需要逐段进行字符串替换。