Maîtriser la recherche efficace de documents avec GroupDocs.Search pour Java

Dans le monde de la gestion de documents, trouver rapidement du contenu spécifique parmi de nombreux documents est crucial. Que vous gériez des contrats juridiques ou des articles académiques, les capacités create index java peuvent vous faire gagner des heures de travail manuel. Ce tutoriel explore l’utilisation de GroupDocs.Search for Java, une puissante java search library qui vous aide à créer des index, add documents to index, et extract text java de vos fichiers efficacement. À la fin de ce guide, vous saurez comment configurer l’indexation avec des paramètres personnalisés et exporter le texte des documents dans différents formats, y compris l’extraction de texte structuré.

Réponses rapides

  • Quel est le but principal ? Pour create index java et récupérer le contenu du document rapidement.
  • Quelle bibliothèque devrais-je utiliser ? La GroupDocs.Search for Java java search library.
  • Puis-je exporter le texte vers un fichier ? Oui, utilisez les adaptateurs output text to file fournis.
  • L’extraction structurée est‑elle prise en charge ? Absolument – utilisez l’adaptateur structured text extraction.
  • Ai‑je besoin d’une licence ? Une licence d’essai ou permanente est requise pour une utilisation en production.

Ce que vous apprendrez

  • Comment create index java et add documents to index avec GroupDocs.Search pour Java.
  • Techniques pour output text to file, les flux, les chaînes et les données structurées.
  • Conseils d’optimisation des performances pour une recherche efficace et la gestion de la mémoire.
  • Applications concrètes de ces fonctionnalités.

Prérequis

Avant de plonger dans le tutoriel, assurez‑vous d’avoir les éléments suivants en place :

  • Java Development Kit (JDK) : Version 8 ou supérieure est recommandée.
  • GroupDocs.Search for Java library.
  • Maven pour la gestion des dépendances et la construction de votre projet.
  • Connaissances de base en programmation Java, en particulier les opérations d’E/S de fichiers.

Configuration de GroupDocs.Search pour Java

Pour commencer à utiliser GroupDocs.Search pour Java, vous devez ajouter les dépendances nécessaires à votre projet. Voici comment le configurer avec Maven :

Configuration Maven
Ajoutez les configurations de dépôt et de dépendance suivantes dans votre fichier pom.xml :

<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>

Pour ceux qui préfèrent un téléchargement direct, vous pouvez obtenir la dernière version depuis GroupDocs.Search for Java releases.

Acquisition de licence
Pour utiliser GroupDocs.Search, envisagez d’obtenir un essai gratuit ou une licence temporaire. Pour un achat complet, visitez leur site officiel afin d’obtenir une licence permanente.

Comment créer un index java avec des paramètres personnalisés

Cette section vous guide à travers la création d’un index, l’ajout de documents et la configuration de la compression pour un stockage optimal.

Création d’index et indexation de documents

Vue d’ensemble

Créer un index vous permet de rechercher vos documents efficacement. L’exemple ci‑dessous montre comment create index java avec une compression élevée puis add documents to index.

import com.groupdocs.search.*;
import java.io.ByteArrayOutputStream;

public class FeatureIndexCreation {
    public static void main(String[] args) {
        // Define the folder paths for indexing
        String indexFolder = YOUR_DOCUMENT_DIRECTORY + "/OutputAdapters/Index";
        String documentsFolder = YOUR_DOCUMENT_DIRECTORY + "/DocumentsPath";  // Adjust as needed

        // Creating an index settings instance with compression enabled
        IndexSettings settings = new IndexSettings();
        settings.setTextStorageSettings(new TextStorageSettings(Compression.High));

        // Creating the index in the specified folder
        Index index = new Index(indexFolder, settings);

        // Adding documents from the specified folder to the index
        index.add(documentsFolder);
    }
}

Explication

  • Paramètres d’index : Nous activons une compression élevée pour le stockage du texte, optimisant l’utilisation de l’espace disque.
  • Ajout de documents : La méthode index.add() adds documents to index, parcourant le dossier de manière récursive.

Comment exporter le texte vers un fichier, un flux, une chaîne et des formats structurés

Voici quatre méthodes courantes pour récupérer et stocker le contenu extrait après avoir created index java.

Exportation du texte du document vers un fichier

Vue d’ensemble

Cet exemple montre comment output text to file au format HTML, ce qui est pratique pour une inspection visuelle ou un traitement ultérieur.

import com.groupdocs.search.*;

public class FeatureOutputToFile {
    public static void main(String[] args) {
        String indexFolder = YOUR_DOCUMENT_DIRECTORY + "/OutputAdapters/Index";
        Index index = new Index(indexFolder);

        // Assuming documents are already indexed, retrieve the first document
        DocumentInfo[] documents = index.getIndexedDocuments();
        if (documents.length > 0) {
            DocumentInfo document = documents[0];

            // Output document text to an HTML file
            FileOutputAdapter fileOutputAdapter = new FileOutputAdapter(OutputFormat.Html, YOUR_OUTPUT_DIRECTORY + "/Text.html");
            index.getDocumentText(document, fileOutputAdapter);
        }
    }
}

Explication

  • FileOutputAdapter : Convertit le texte du document indexé en HTML et l’écrit dans le chemin de fichier spécifié.

Exportation du texte du document vers un flux

Vue d’ensemble

Lorsque vous avez besoin d’un traitement en mémoire — comme la génération de contenu web dynamique — exporter vers un flux est idéal.

import com.groupdocs.search.*;
import java.io.ByteArrayOutputStream;

public class FeatureOutputToStream {
    public static void main(String[] args) {
        String indexFolder = YOUR_DOCUMENT_DIRECTORY + "/OutputAdapters/Index";
        Index index = new Index(indexFolder);

        // Assuming documents are already indexed, retrieve the first document
        DocumentInfo[] documents = index.getIndexedDocuments();
        if (documents.length > 0) {
            DocumentInfo document = documents[0];

            // Output document text to a stream in HTML format
            ByteArrayOutputStream stream = new ByteArrayOutputStream();
            StreamOutputAdapter streamOutputAdapter = new StreamOutputAdapter(OutputFormat.Html, stream);
            index.getDocumentText(document, streamOutputAdapter);
        }
    }
}

Explication

  • StreamOutputAdapter : Transmet le texte du document dans un ByteArrayOutputStream, permettant une manipulation flexible sans toucher au système de fichiers.

Exportation du texte du document vers une chaîne

Vue d’ensemble

Si vous avez simplement besoin d’enregistrer ou d’afficher le contenu, convertir le résultat en String est la voie la plus rapide.

import com.groupdocs.search.*;

public class FeatureOutputToString {
    public static void main(String[] args) {
        String indexFolder = YOUR_DOCUMENT_DIRECTORY + "/OutputAdapters/Index";
        Index index = new Index(indexFolder);

        // Assuming documents are already indexed, retrieve the first document
        DocumentInfo[] documents = index.getIndexedDocuments();
        if (documents.length > 0) {
            DocumentInfo document = documents[0];

            // Output document text to a string in HTML format
            StringOutputAdapter stringOutputAdapter = new StringOutputAdapter(OutputFormat.Html);
            index.getDocumentText(document, stringOutputAdapter);
            String result = stringOutputAdapter.getResult();
        }
    }
}

Explication

  • StringOutputAdapter : Capture le texte du document dans une String, facilitant son intégration dans les journaux ou les composants UI.

Exportation du texte du document vers un format structuré

Vue d’ensemble

Pour un analyse avancée — comme l’extraction de champs, de tableaux ou de métadonnées personnalisées — utilisez l’adaptateur de sortie structuré.

import com.groupdocs.search.*;

public class FeatureOutputToStructure {
    public static void main(String[] args) {
        String indexFolder = YOUR_DOCUMENT_DIRECTORY + "/OutputAdapters/Index";
        Index index = new Index(indexFolder);

        // Assuming documents are already indexed, retrieve the first document
        DocumentInfo[] documents = index.getIndexedDocuments();
        if (documents.length > 0) {
            DocumentInfo document = documents[0];

            // Output document text to a structured format like PlainText
            StructuredOutputAdapter structuredOutputAdapter = new StructuredOutputAdapter(OutputFormat.PlainText);
            index.getDocumentText(document, structuredOutputAdapter);
        }
    }
}

Explication

  • StructuredOutputAdapter : Extrait le texte du document dans un format structured text extraction, permettant une analyse fine ou des pipelines de données en aval.

Problèmes courants et solutions

ProblèmeCauseSolution
Index non crééChemin du dossier incorrect ou permissions d’écriture manquantesVérifiez que indexFolder existe et que l’application dispose des droits d’écriture
Aucun document retournéindex.add() non appelé ou dossier source incorrectAssurez‑vous que documentsFolder pointe vers le bon répertoire et contient des types de fichiers pris en charge
Fichier de sortie videChemin de l’adaptateur de sortie invalide ou répertoires manquantsCréez le répertoire cible (YOUR_OUTPUT_DIRECTORY) avant d’exécuter
Pics de mémoire avec de gros fichiersChargement du fichier entier en mémoireUtilisez les adaptateurs de flux (StreamOutputAdapter) pour traiter les données de façon incrémentielle

Questions fréquentes

Q : Puis‑je utiliser GroupDocs.Search avec d’autres langages JVM comme Kotlin ou Scala ?
R : Oui, la bibliothèque est pure Java et fonctionne parfaitement avec tout langage JVM.

Q : Comment la compression affecte‑t‑elle la vitesse de recherche ?
R : Une compression élevée réduit l’utilisation du disque mais peut ajouter une légère surcharge CPU lors de l’indexation. Les performances de recherche restent rapides car la bibliothèque décompresse à la volée.

Q : Est‑il possible de mettre à jour un index existant sans le reconstruire ?
R : Absolument. Utilisez index.add() pour les nouveaux fichiers et index.remove() pour supprimer les anciens.

Q : Quel format de sortie est le meilleur pour un traitement ultérieur du langage naturel ?
R : PlainText via l’adaptateur structured text extraction fournit un contenu propre et indépendant de la langue, idéal pour les pipelines NLP.

Q : Ai‑je besoin d’une licence pour le développement et les tests ?
R : Une licence d’essai gratuite suffit pour le développement et l’évaluation. Les déploiements en production nécessitent une licence achetée.


Dernière mise à jour : 2026-01-14
Testé avec : GroupDocs.Search 25.4 pour Java
Auteur : GroupDocs