Будучи разработчиком приложений 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.