Als Java -Anwendungsentwickler, der Dokumentenverarbeitungsanwendungen erstellt, sind Sie möglicherweise daran interessiert, die Fähigkeit des Lesens von Word -Dokumenten in Ihrer Java -Anwendung bereitzustellen und Text aus diesen Dokumenten programmgesteuert zu extrahieren. Sie können die Leistung der DOCX4J -API nutzen, um DOCX -Dateien zu lesen und Text aus diesen Dateien aus Ihrer Java -Anwendung zu extrahieren. In diesem Artikel zeigen wir, wie die DOCX4J -API verwendet wird, um unser Ziel zu erreichen, mit DOCX -Dateien für die Extraktion von Text zu arbeiten.

Wie liest und extrahiere ich Text aus Word -Dokumenten in Java?

Bevor Sie mit dem Schreiben von Code zum Erstellen einer DOCX -Datei mithilfe der DOCX4J -API beginnen, müssen Sie eine DOCX4J -API in Ihrer Entwicklungsumgebung konfigurieren. Wenn Sie die DOCX4J -API noch nicht installiert und konfiguriert haben, können Sie sich unseren Artikel über So installieren Sie die DOCX4J -API an.

Text aus Word-Dokument in Java {.wp-Block-Heading} extrahieren}

In dieser Phase gehen wir davon aus, dass Sie Ihre Entwicklungsumgebung eingerichtet haben und bereit sind, die DOCX4J -API zum Extrahieren von Text aus Word -Dokumenten zu verwenden. Der folgende Beispielcode kann für diesen Zweck verwendet werden. Sie können es direkt auf die Hauptmethode Ihrer Konsolen-basierten Java-Anwendung kopieren und ausführen.

// 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);
}

Schauen wir uns an, wie dieser Code funktioniert. Das Word -Dokument wird unter Verwendung des wordprocesingMlpackage geladen und wird mit der Klasse MainDocumentArt Klasse der DOCX4J -API weiter verarbeitet. Sobald das Dokument geladen ist, wird die Liste der Textknoten aus dem MainDocumentPart -Objekt erhalten, das das tatsächliche Dokument enthält. Jeder Textknoten wird dann als JaxBelement -Objekt gelesen, indem er darüber überquert wird.

Schlussfolgerung

Die Arbeit mit Word -Dokumenten aus Ihrer Java -Anwendung ist mit DOCX4J -API einfach. Mit der API können Sie Ihren Java -Anwendungen Dokumentverarbeitungsfunktionen hinzufügen, ohne sich auf die internen Details des zugrunde liegenden Dateiformats zu befassen. Folgen Sie diesem Blog weiter, um weitere Beispiele für die Arbeit mit DOCX4J API.