Я хочу заменить элементы управления содержимым (только раскрывающийся список) в docx
реальным текстом, а затем применить некоторую логику к документу для извлечения таблиц, используя apache-poi
. Если я этого не сделаю, то ячейки с контролем содержимого не будут извлечены.
Если я сохраню docx
вручную как Word 97-2003 (*.doc
), то он попросит удалить все элементы управления содержимым и заменить его выделенным текстом, поэтому я планирую преобразовать docx
в doc
, чтобы избавиться от него. элементов управления контентом.
Я исследовал до сих пор:
- Я наткнулся на
Aspose.words
библиотеку, но она платная и может сделать
работа всего за 3 строки кода (проверено в пробной версии).
- Я сам попробовал
POI
, но не понял, как именно это сделать. Я попробовал ниже код:
XWPFDocument doc = new XWPFDocument(new FileInputStream("<DOCX_FILE_PATH>"));
FileOutputStream fos = new FileOutputStream("<PATH_FOR_DOC_FILE>");
doc.write(fos);
fos.close();
Он создает файл документа, но не удаляет элементы управления содержимым, как это было с aspose
.
- Сейчас я пытаюсь попробовать
JODConverter
, потому что он опирается на LibreOffice
или OpenOffice
- у нас его нет на сервере и у нас нет разрешения на установку новых программ.
- Я посмотрел на
Docx4J
, но похоже, что он не может сделать это после проверки его API.
Как лучше всего справиться с этим сценарием, есть ли способ напрямую заменить элементы управления контентом? Спасибо!