使用apache POIreplaceword文档中的文本会失败,因为段落运行对象在占位符处被分割
我正在使用Apache POI(版本3.17)来replaceMS Word和Excel文档中的一些文本。 文档中的占位符具有以下结构:[key]。
当我replace[键]值时,所有现有的格式化选项必须保持。 问题是,当find包含这样一个占位符的段落时,运行对象的列表就像这样构build:
- … [
- 键] …
无法在一次运行中保留占位符。 我可以检查多次运行,但是通过这种方式,弄清楚正确的样式和运行的数量,占位符的跨度,真是一团糟。
是否有可能强制运行始终包含占位符的全长? 占位符的所有部分都以相同的方式格式化。
POI什么时候决定创build一个新的运行? 我明白,如果以不同的方式对POI进行格式化,那么POI就会分割占位符,但显然POI开始新的运行时有不同的标准。