Text aus docx mit GroupDocs.Viewer für Java extrahieren
Suchen Sie nach einer Möglichkeit, Text aus docx Dateien programmgesteuert zu extrahieren? Egal, ob Sie Seitenzahlen ziehen, jede Textzeile erfassen oder durchsuchbare Indizes erstellen möchten – das manuelle Vorgehen ist zeitaufwändig und fehleranfällig. GroupDocs.Viewer für Java macht den Prozess einfach, indem es leistungsstarke APIs bereitstellt, die die Dokumentstruktur lesen und saubere Textdaten zurückgeben.

Schnelle Antworten
- Was bedeutet „Text aus docx extrahieren“? Es bedeutet, eine DOCX‑Datei programmgesteuert zu lesen und deren Klartextinhalt Zeile für Zeile abzurufen.
- Welche Bibliothek übernimmt das? GroupDocs.Viewer für Java stellt die
Viewer‑Klasse und zugehörige APIs bereit. - Benötige ich eine Lizenz? Eine kostenlose Testversion reicht für die Evaluierung; für den Produktionseinsatz ist eine kostenpflichtige Lizenz erforderlich.
- Welche Java‑Version wird benötigt? Jeder JDK 8 +‑kompatible Build, der mit Maven funktioniert.
- Kann ich große Stapel verarbeiten? Ja – durch Wiederverwenden von
Viewer‑Instanzen und das Verarbeiten von Seiten in Streams.
Was bedeutet „Text aus docx extrahieren“?
Das Extrahieren von Text aus einer DOCX‑Datei bedeutet, die interne XML‑Struktur des Dokuments zu lesen und den menschenlesbaren Text ohne Formatierung zurückzugeben. Das ist nützlich für Indexierung, Suche oder die Weiterleitung von Inhalten an nachgelagerte Analyse‑Pipelines.
Warum GroupDocs.Viewer für Java verwenden?
- Genauigkeit: Handhabt komplexe Layouts, Tabellen und mehrspaltige Dokumente.
- Geschwindigkeit: Optimierte Rendering‑Engine, die selbst bei großen Dateien schnell arbeitet.
- Cross‑Format‑Unterstützung: Dieselbe API funktioniert für PDF, PPTX, XLSX und mehr, sodass Sie Code wiederverwenden können.
- Keine externen Abhängigkeiten: Reines Java, keine nativen Bibliotheken nötig.
Voraussetzungen
- Java Development Kit (JDK) 8 oder neuer.
- Maven installiert für das Abhängigkeits‑Management.
- Eine DOCX‑Datei, die Sie analysieren möchten (legen Sie sie in einem bekannten Ordner ab).
Einrichtung von GroupDocs.Viewer für Java
Fügen Sie das GroupDocs‑Repository und die Abhängigkeit zu Ihrer pom.xml hinzu:
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/viewer/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-viewer</artifactId>
<version>25.2</version>
</dependency>
</dependencies>
Lizenzbeschaffungsschritte
- Free Trial: Laden Sie eine kostenlose Testversion von der GroupDocs downloads page herunter.
- Temporary License: Erhalten Sie eine temporäre Lizenz für erweiterte Tests über die temporary license page.
- Purchase: Für vollen Zugriff und Support sollten Sie eine Lizenz über das GroupDocs purchase portal erwerben.
Grundlegende Initialisierung
- Importieren Sie die erforderlichen Klassen.
- Erstellen Sie eine
Viewer‑Instanz, die auf Ihre DOCX‑Datei zeigt. - Verwenden Sie
ViewInfoOptions.forPngView(true), um Seiten‑Informationen (Metadaten und Textzeilen) anzufordern.
Wie man Text aus docx extrahiert – Schritt‑für‑Schritt‑Anleitung
1. Extrahieren von Seiten‑Metadaten
Seiten‑Metadaten wie die Seitenzahl sind wichtig, wenn Sie Navigationsstrukturen bauen oder bestimmte Abschnitte referenzieren möchten.
try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/SAMPLE_DOCX")) {
ViewInfoOptions viewInfoOptions = ViewInfoOptions.forPngView(true);
ViewInfo viewInfo = viewer.getViewInfo(viewInfoOptions);
for (Page page : viewInfo.getPages()) {
int pageNumber = page.getNumber();
System.out.println("Page: " + pageNumber); // Outputs the page number
}
}
ViewInfoOptions.forPngView(true): Weist die API an, Seiteninformationen zu sammeln, während das PNG‑Rendering vorbereitet wird.viewInfo.getPages(): Gibt eine Sammlung zurück, in der jedesPage‑Objekt seine Nummer und weitere Metadaten enthält.
Pro‑Tipp: Entlassen Sie den Viewer innerhalb eines try‑with‑resources‑Blocks, um native Ressourcen automatisch freizugeben.
2. Extrahieren von Textzeilen aus Seiten
Jetzt, wo Sie jede Seite identifizieren können, holen wir die eigentlichen Textzeilen.
try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/SAMPLE_DOCX")) {
ViewInfoOptions viewInfoOptions = ViewInfoOptions.forPngView(true);
ViewInfo viewInfo = viewer.getViewInfo(viewInfoOptions);
for (Page page : viewInfo.getPages()) {
System.out.println("Page: " + page.getNumber());
System.out.println("Text lines:");
for (Line line : page.getLines()) {
String lineText = line.getValue();
System.out.print(lineText + "\t");
}
}
}
page.getLines(): Gibt eine Liste vonLine‑Objekten zurück, von denen jedes eine einzelne Textzeile darstellt, wie sie auf der Seite erscheint.- Die innere Schleife gibt jede Zeile aus, getrennt durch Tabs für bessere Lesbarkeit.
Häufige Probleme & Lösungen
| Symptom | Wahrscheinliche Ursache | Lösung |
|---|---|---|
null Seitenzahlen | Dokument wurde nicht korrekt geladen | Überprüfen Sie den Dateipfad und stellen Sie sicher, dass die Datei existiert. |
| Keine Textzeilen zurückgegeben | Nicht unterstütztes Dateiformat | Stellen Sie sicher, dass die DOCX‑Version unterstützt wird; aktualisieren Sie GroupDocs bei Bedarf. |
OutOfMemoryError bei großen Dateien | Viewer hält zu viele Seiten im Speicher | Verarbeiten Sie Seiten in kleineren Stapeln oder verwenden Sie dieselbe Viewer‑Instanz erneut. |
Praktische Anwendungen
- Suchmaschinen-Indexierung: Speichern Sie Seitenzahlen zusammen mit dem extrahierten Text, um präzise Snippet‑Abrufe zu ermöglichen.
- Juristische Dokumentenprüfung: Extrahieren Sie jede Zeile für automatisierte Klauselerkennung oder Redaktions‑Workflows.
- Inhaltsmigration: Überführen Sie Legacy‑DOCX‑Inhalte in ein CMS, wobei die Struktur erhalten bleibt.
- Reporting‑Dashboards: Fassen Sie Schlüsselabschnitte zusammen, indem Sie Überschriften und Aufzählungspunkte extrahieren.
Leistungsüberlegungen
- Ressourcen korrekt freigeben: Schließen Sie immer den
Viewer(verwenden Sie try‑with‑resources). - Batch‑Verarbeitung: Beim Umgang mit vielen Dokumenten wiederverwenden Sie eine einzelne
Viewer‑Instanz pro Thread, um den Overhead zu reduzieren. - Render‑Optionen: Wenn Sie nur Text benötigen, können Sie das PNG‑Rendering überspringen, indem Sie
ViewInfoOptions.forTextView()verwenden (hier nicht gezeigt), um die Verarbeitungszeit zu verkürzen.
Fazit
Sie wissen jetzt, wie Sie Text aus docx Dateien mit GroupDocs.Viewer für Java extrahieren, Seitenzahlen abrufen und jede Textzeile iterieren können. Diese Bausteine ermöglichen Ihnen, leistungsstarke Dokument‑Verarbeitungspipelines zu erstellen, die schnell, zuverlässig und leicht wartbar sind.
Nächste Schritte
- Experimentieren Sie mit anderen Formaten (PDF, PPTX) mit derselben API.
- Kombinieren Sie den extrahierten Text mit einer Volltext‑Suchmaschine wie Elasticsearch.
- Untersuchen Sie Styling‑Optionen für gerenderte Bilder, falls Sie auch visuelle Vorschauen benötigen.
Häufig gestellte Fragen
F: Welche Dateiformate unterstützt GroupDocs.Viewer?
A: Es unterstützt eine breite Palette, darunter DOCX, PDF, XLSX, PPTX und viele weitere.
F: Kann ich das Ausgabeformat beim Extrahieren von Zeilen anpassen?
A: Ja, indem Sie ViewInfoOptions konfigurieren (z. B. forTextView() für reinen Text).
F: Gibt es ein Limit für die Anzahl der verarbeitbaren Seiten?
A: Es gibt kein festes Limit, aber sehr große Dokumente können eine Stapelverarbeitung erfordern, um speichereffizient zu bleiben.
F: Wie gehe ich mit Ausnahmen in GroupDocs.Viewer um?
A: Umgeben Sie Ihren Viewer‑Code mit try‑catch‑Blöcken und behandeln Sie ViewerException oder generische IOException nach Bedarf.
F: Kann dieses Tool in andere Java‑Frameworks integriert werden?
A: Absolut! Es funktioniert nahtlos mit Spring, Hibernate, Jakarta EE und mehr.
Ressourcen
- GroupDocs-Dokumentation
- API-Referenz
- GroupDocs.Viewer herunterladen
- Lizenz erwerben
- Kostenlose Testversion herunterladen
- Temporäre Lizenz anfordern
Zuletzt aktualisiert: 2026-04-13
Getestet mit: GroupDocs.Viewer for Java 25.2
Autor: GroupDocs