我正在努力找到&使用POI 3.8替换docx文件中的文本段落,如here所述。
如果我在第一次运行时插入我的标签,那就可以了。但是,一旦我重新打开docx文件并进行一些修改,Word实际上会对文本的运行进行分段。例如,“hello world”可能是:
<w:r><w:t>Hello wo</w:t></w:r><w:r w:rsidR="00FB0672"><w:t>rld</w:t></w:r>
这种碎片化的原因在于我认为更改跟踪,格式化和拼写检查等。
有人知道如何......
a)...在MS Word中禁用此功能?
b)......之后以某种方式解压缩了docx文件?
c)......摆脱这种碎片的任何其他解决方案?
我已经尝试将文件另存为.doc / .odt并将文件重新保存为.docx。但这些碎片仍然存在......
任何帮助都非常感谢 - 提前感谢您的帮助!
答案 0 :(得分:3)
在Word中,您想要和可以关闭的功能是拼写和语法检查以及rsid插入。
这是针对docx4j(我管理的一个项目),而不是POI,但是VariablePrepare显示了如果你无法在Word中阻止它,需要做什么来解除片段。由于POI使用类似的XML编组/解组合方法(尽管是XML Beans,而不是JAXB),因此您应该能够将该代码转换为使用POI API。