你好,我正在特灵使用java apachi poi库在word文档中创建目录。我在这里找到了一个代码表。但当我运行代码时,它给我下面的错误
发生异常。联合值“false”与命名空间http://schemas.openxmlformats.org/officeDocument/2006/sharedTypes中“ST_OnOff”的任何成员都不匹配
产生错误的代码是
XWPFParagraph paragraph = document.createParagraph();
CTP ctP = paragraph.getCTP();
CTSimpleField toc = ctP.addNewFldSimple();
toc.setInstr("TOC \\* MERGEFORMAT");
toc.setDirty(STOnOff.TRUE);
POI版本5.2.3
1条答案
按热度按时间f4t66c6m1#
如果Microsoft Word字段应设置为“脏”,以告知Microsoft Word在下次打开文件时刷新该字段,则这已使用将
CTSimpleField
属性dirty
设置为org.openxmlformats.schemas.wordprocessingml.x2006.main.STOnOff.TRUE
(最高为Apache POI版本4.x.x)来完成。从版本5.0.0开始,
org.openxmlformats.schemas.wordprocessingml.x2006.main.STOnOff
不再存在。还有其他STOnOff
类,但它们都不提供TRUE
/FALSE
,而只提供ON
/OFF
。但现在CTSimpleField.setDirty
直接接受布尔值。要使此代码在Apache POI版本高于4的情况下工作,您需要更改以下内容: