Text aus PDF Java extrahieren: Dokumentenindex mit GroupDocs.Search erstellen

In diesem praxisorientierten Leitfaden erfahren Sie wie man Text aus PDF Java extrahiert und diesen Rohinhalt in einen schnellen, volltextdurchsuchbaren Index umwandelt. Egal, ob Sie ein internes Wissensdatenbank, ein Vertrags‑Suchportal oder eine benutzerdefinierte Suchmaschine bauen – die nachfolgenden Schritte führen Sie durch alles, vom Auslesen des Textes aus PDFs über die Serialisierung der Daten, das Erstellen des Indexes bis hin zur Ausführung von Abfragen. Lassen Sie uns eintauchen und sehen, warum GroupDocs.Search den gesamten Prozess reibungslos und skalierbar macht.

Schnelle Antworten

  • Was ist der Hauptzweck? Um Text aus PDF‑Java‑Dateien zu extrahieren und einen durchsuchbaren Dokumentenindex mit GroupDocs.Search zu erstellen.
  • Welche Bibliotheksversion? GroupDocs.Search 25.4 (oder die neueste Version).
  • Benötige ich eine Lizenz? Eine kostenlose Testversion funktioniert für die Entwicklung; für die Produktion ist eine Voll‑Lizenz erforderlich.
  • Kann ich PDFs indexieren? Ja – PDF‑Text extrahieren und dem Index hinzufügen.
  • Wie führe ich eine Suche aus? Verwenden Sie die Methode index.search(query) nach dem Hinzufügen von Daten.

Was ist ein Dokumentenindex?

Ein Dokumentenindex ist eine strukturierte Sammlung von durchsuchbaren Begriffen, die aus Ihren Dateien extrahiert wurden. Durch das Erstellen eines Dokumentenindexes ermöglichen Sie schnelle Volltext‑Suchen in großen Repositorien, was die Abrufgeschwindigkeit und Genauigkeit erheblich verbessert.

Warum GroupDocs.Search für Java verwenden?

  • Robuste Extraktion – Unterstützt PDFs, Word, Excel und mehr.
  • Einfache Serialisierung – Extrahierte Daten als Byte‑Arrays für spätere Wiederverwendung speichern.
  • Skalierbare Indexierung – Effizient Millionen von Dokumenten indexieren.
  • Leistungsstarke Abfragesprache – Unterstützt komplexe Volltext‑Such‑Java‑Abfragen.

Voraussetzungen

  • GroupDocs.Search for Java (Version 25.4 oder neuer).
  • Java Development Kit (JDK), kompatibel mit Ihrer GroupDocs‑Version.
  • Eine IDE wie IntelliJ IDEA oder Eclipse.
  • Maven für das Abhängigkeitsmanagement.

Einrichtung von GroupDocs.Search für Java

Zuerst fügen Sie die Bibliothek zu Ihrem Projekt hinzu.

Maven‑Setup
Fügen Sie das Folgende in Ihre pom.xml‑Datei ein:

<repositories>
    <repository>
        <id>repository.groupdocs.com</id>
        <name>GroupDocs Repository</name>
        <url>https://releases.groupdocs.com/search/java/</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-search</artifactId>
        <version>25.4</version>
    </dependency>
</dependencies>

Direkter Download
Alternativ können Sie die neueste Version von GroupDocs.Search for Java releases herunterladen.

Lizenzbeschaffung

  • Free Trial – Alle Funktionen mit einer temporären Lizenz testen.
  • Purchase – Vollzugriff und Prioritäts‑Support erhalten.

Schritt‑für‑Schritt‑Implementierung

Wie man Text aus PDFs (und anderen Dokumenten) extrahiert

Das Extrahieren von Roh‑ oder formatiertem Text ist der erste Schritt zur Erstellung eines Dokumentenindexes. Wenn Sie Text aus PDF Java extrahieren, geben Sie der Suchmaschine etwas, das sie verstehen kann.

String documentPath = "YOUR_DOCUMENT_DIRECTORY/Lorem ipsum.pdf";
Extractor extractor = new Extractor();
Document document = Document.createFromFile(documentPath);
ExtractionOptions extractionOptions = new ExtractionOptions();
extractionOptions.setUseRawTextExtraction(false); // Extract with formatting
ExtractedData extractedData = extractor.extract(document, extractionOptions);

Tipp: Setzen Sie setUseRawTextExtraction(true), wenn Sie reinen Text ohne Formatierung benötigen.

Wie man extrahierte Daten serialisiert

Serialisierung ermöglicht es Ihnen, die extrahierten Daten für die spätere Indexierung zu speichern.

ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
extractedData.serialize(outputStream);
byte[] serializedArray = outputStream.toByteArray();

Wie man extrahierte Daten deserialisiert

Wenn Sie bereit sind, den Index zu erstellen, konvertieren Sie das Byte‑Array zurück in ein Objekt.

ByteArrayInputStream inputStream = new ByteArrayInputStream(serializedArray);
ExtractedData deserializedData = ExtractedData.deserialize(inputStream);

Wie man einen Dokumentenindex erstellt

Jetzt, wo Sie deserializedData haben, können Sie den Index erstellen, der durchsuchbare Begriffe enthält.

String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/SeparateDataExtraction";
com.groupdocs.search.Index index = new com.groupdocs.search.Index(indexFolder);

Wie man Daten zum Index hinzufügt und eine Suche durchführt

Das Hinzufügen von Daten und das Abfragen des Index vervollständigt den extract text from PDF Java‑Workflow.

ExtractedData[] dataToIndex = new ExtractedData[] { deserializedData };
index.add(dataToIndex, new IndexingOptions());
String query = "ipsum";
SearchResult result = index.search(query);

Pro‑Tipp: Verwenden Sie index.search("your query", SearchOptions), um das Relevanzranking fein abzustimmen.

Häufige Anwendungsfälle

  1. Document Management Systems – Verträge, Rechnungen oder Richtlinien schnell finden.
  2. Content‑Based Search Engines – Interne Wissensdatenbanken mit Volltext‑Such‑Java‑Funktionen betreiben.
  3. Data Archiving Solutions – Historische Aufzeichnungen für sofortige Abrufbarkeit indexieren.

Leistungsüberlegungen

  • Memory Management: JVM‑Heap‑Größe für große Dokumenten‑Batches anpassen.
  • Indexing Options: Unnötige Funktionen (z. B. Term‑Vectors) deaktivieren, um die Indexierung zu beschleunigen.
  • Regular Updates: GroupDocs.Search aktuell halten, um von Performance‑Patches zu profitieren.

Häufig gestellte Fragen

F: Wie gehe ich effizient mit sehr großen PDF‑Dateien um?
A: Streamen Sie die Datei mit Extractor und verarbeiten Sie sie in Teilen; erhöhen Sie bei Bedarf den JVM‑Heap.

F: Kann ich die Syntax der Suchabfrage anpassen?
A: Ja – GroupDocs.Search unterstützt Boolesche Operatoren, Wildcards und Proximity‑Suchen.

F: Was soll ich tun, wenn die Serialisierung fehlschlägt?
A: Stellen Sie sicher, dass alle Objekte Serializable implementieren und fangen Sie IOException, um Details zu protokollieren.

F: Ist es möglich, nur bestimmte Abschnitte eines Dokuments zu indexieren?
A: Absolut – konfigurieren Sie ExtractionOptions, um Seiten oder Abschnitte vor dem Indexieren zu filtern.

F: Wie aktualisiere ich auf eine neuere GroupDocs.Search‑Version?
A: Aktualisieren Sie die Versionsnummer in Ihrer pom.xml und führen Sie mvn clean install aus; prüfen Sie den Migrationsleitfaden auf Breaking Changes.

Ressourcen


Last Updated: 2026-02-19
Tested With: GroupDocs.Search 25.4 for Java
Author: GroupDocs