Будучи разработчиком приложений Java, который создает приложения для обработки документов, вы можете быть заинтересованы в предоставлении возможности чтения документов Word в вашем приложении Java и программно извлекать текст из этих документов. Вы можете использовать мощность API DOCX4J для чтения файлов docx и извлечь текст из этих файлов из вашего приложения Java. В этой статье мы собираемся показать, как использовать API DOCX4J для достижения нашей цели работы с файлами DOCX для извлечения текста.

Как читать и извлечь текст из документов Word в Java?

Прежде чем начать писать код для создания файла DOCX с помощью API DOCX4J, вы должны настроить API DOCX4J в вашей среде разработки. Если вы еще не установили и не настроили API DOCX4J, вы можете взглянуть на нашу статью о Как установить API DOCX4J.

Извлечь текст из документа Word в java

На этом этапе мы предполагаем, что вы настроили среду разработки и готовы начать использовать API DOCX4J для извлечения текста из документов Word. Следующий пример кода может использоваться для этой цели. Вы можете напрямую скопировать его с основным методом вашего приложения Java на основе консоли и выполнить его.

// Load document
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(new File("FileFormat.docx"));
// Load main document part
MainDocumentPart mainDocumentPart = wordMLPackage.getMainDocumentPart();
// Extract nodes
String textNodesXPath = "//w:t";
List<Object> textNodes= mainDocumentPart.getJAXBNodesViaXPath(textNodesXPath, true);
// Print text
for (Object obj : textNodes) {
  Text text = (Text) ((JAXBElement) obj).getValue();
  String textValue = text.getValue();
  System.out.println(textValue);
}

Давайте посмотрим, как работает этот код. Документ Word загружается с использованием WordProcesingMlPackage и дополнительно обрабатывается с использованием класса MainDocumentPart API DOCX4J. Как только документ загружен, список текстовых узлов получается из объекта MainDocumentPart, содержащего фактический документ. Каждый текстовый узел затем читается как Jaxbelement**объект, пройдя через него.

Заключение {.wp-block heading}

Работа с документами Word из вашего приложения Java легко с API DOCX4J. API помогает вам добавить функциональность обработки документов в ваши приложения Java, не вдаваясь во внутренние детали основного формата файла. Продолжайте следить за этим блогом, чтобы получить дополнительные примеры работы с DOCX4J API.