Я использую компоненты Apache POI XWPF и java для извлечения данных из XML-файла в документ Word. Пока все хорошо, но я изо всех сил пытаюсь создать оглавление. Я должен создать оглавление в начале метода, а затем обновить его в конце, чтобы получить все новые заголовки. В настоящее время я использую doc.createTOC(), где doc - это переменная, созданная из XWPFDocument, для создания таблицы в начале, а затем я использую doc.enforceUpdateFields() для обновления всего в конце документа. Но когда я открываю документ после запуска программы, оглавление пусто, но панель навигации содержит некоторые из указанных выше заголовков.Apache POI Содержание не обновляется
Комментарий, который рекомендуется включить в код. Поэтому я начал с создания документа из шаблона:
XWPFDocument doc = new XWPFDocument(new FileInputStream("D://Template.docx"));
Я тогда создать оглавление:
doc.createTOC();
Затем в течение метода я добавлять заголовки документа:
XWPFParagraph documentControlHeading = doc.createParagraph();
documentControlHeading.setPageBreak(true);
documentControlHeading.setAlignment(ParagraphAlignment.LEFT);
documentControlHeading.setStyle("Tier1Header");
После добавления всех заголовков я хочу обновить документ, чтобы все новые заголовки отображались в оглавлении. Я это купить с помощью следующей команды:
doc.enforceUpdateFields();
Дайте нам урезанную версию вашего кода, который показывает проблему, а может быть, кто-то может помочь. – jmarkmurphy
Привет. Я добавил код в исходный вопрос, надеюсь, что это поможет. – Hendrien