Библиотека HWPF может не поддерживать все функции, которые существуют в вашем файле doc
, и это может привести к изменению форматов.Это также может привести к нечитаемым файлам.
Несколько лет назад я создал настраиваемую библиотеку HWPF, которая могла бы правильно изменять и записывать разнообразные файлы документов для одного из моих клиентов, и я приобрел большой опыт работы сформат файла doc и библиотека HWPF.
Проблема в том, что нужно должным образом поддерживать все функции HWPF, которые могут присутствовать в файле doc.Например, если клипарт включен в файл, будут отдельные таблицы, которые сохраняют положение и свойства клипартов.Если содержимое (текст) изменяется без корректировки адресов в других внутренних таблицах, форматы и т. Д. Могут быть сдвинуты, проигнорированы или потеряны.(или в худшем случае документ не читается)
В настоящее время я не уверен в статусе HWPF, но я ожидаю, что он не полностью поддерживает основные функции, относящиеся к файлу документации.
Если вы хотите использовать HWPF для изменения / записи файлов документов, вы можете добиться успеха с файлами, которые имеют сокращенный «набор функций».Например, нет таблиц, нет клипартов, нет текстовых полей - все в таком духе.Если вам требуется поддержка практически любого документа, который может предоставить пользователь, я бы порекомендовал найти другое решение.
Одним из вариантов может быть использование rtf
файлов с именем .doc
.Или используйте библиотеку XWPF, которая работает для .docx
файлов.