Diviser un grand fichier texte en lignes avec GroupDocs Merger Java

Dans ce tutoriel, vous découvrirez comment diviser le contenu d’un grand fichier texte en documents individuels basés sur les lignes avec GroupDocs Merger pour Java. Que vous traitiez des journaux, des exportations CSV ou toute source texte massive, découper le fichier en morceaux gérables facilite grandement l’analyse en aval, le traitement parallèle et le stockage.

Réponses rapides

  • Quelle bibliothèque gère la division ? GroupDocs Merger for Java.
  • Combien de lignes peuvent être traitées ? Il peut gérer des fichiers contenant des millions de lignes ; l’API diffuse les données afin que l’utilisation de la mémoire reste faible.
  • Ai-je besoin d’une licence ? Un essai gratuit fonctionne pour l’évaluation ; une licence commerciale est requise pour la production.
  • Quelle version de Java est requise ? JDK 8 ou plus récent.
  • Puis-je changer le format de sortie ? Oui – vous pouvez exporter chaque ligne au format TXT, PDF, DOCX, ou tout autre des plus de 50 formats pris en charge.

Qu’est-ce que la division d’un grand fichier texte ?

Diviser un grand fichier texte consiste à lire chaque ligne et à l’écrire dans un document séparé, permettant ainsi une gestion indépendante de chaque enregistrement. Cette approche réduit la pression sur la mémoire et permet des flux de travail parallèles.

Pourquoi utiliser GroupDocs Merger pour Java ?

GroupDocs Merger prend en charge plus de 50 formats d’entrée et de sortie, traite des documents de plusieurs centaines de pages sans charger le fichier complet en mémoire, et offre un streaming intégré pour maintenir l’utilisation du tas en dessous de 100 Mo même pour des fichiers de plus de 2 Go. Ces avantages quantifiés en font un choix de premier plan pour le traitement de texte de niveau entreprise.

Prérequis

  • Java Development Kit (JDK) 8 ou ultérieur installé.
  • Outil de construction – Maven ou Gradle pour la gestion des dépendances.
  • Bibliothèque GroupDocs Merger pour Java (téléchargée via Maven/Gradle ou JAR manuel).

Bibliothèques et dépendances requises

Ajoutez GroupDocs Merger à votre projet :

Maven:

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-merger</artifactId>
    <version>latest-version</version>
</dependency>

Gradle:

implementation 'com.groupdocs:groupdocs-merger:latest-version'

Sinon, téléchargez la dernière version depuis GroupDocs.Merger for Java releases. Pour plus d’informations, consultez l’autre lien GroupDocs.Merger for Java releases .

Étapes d’obtention de licence

  1. Essai gratuit – testez toutes les fonctionnalités sans frais.
  2. Licence temporaire – demandez une clé à court terme depuis la page de licence temporaire si vous dépassez les limites de l’essai.
  3. Achat – obtenez une licence complète sur la page d’achat de GroupDocs pour une utilisation en production illimitée. Vous pouvez également consulter le site d’achat de GroupDocs pour les détails de tarification.

Comment diviser un grand fichier texte en documents ligne par ligne avec GroupDocs Merger ?

Chargez le fichier source, configurez TextSplitOptions, et invoquez la méthode split. L’API diffuse chaque ligne, l’écrit dans le dossier cible et libère les ressources automatiquement, de sorte que même les fichiers contenant des millions de lignes sont traités efficacement. En utilisant l’approche de streaming, la consommation de mémoire reste inférieure à 100 Mo, et l’opération peut être parallélisée sur plusieurs cœurs CPU pour un traitement plus rapide des grands ensembles de données.

Étape 1 : importer les packages nécessaires

Merger, TextSplitOptions et les classes d’E/S standard doivent être importés avant tout traitement.

import com.groupdocs.merger.Merger;

Merger merger = new Merger("path/to/your/file.txt");

Étape 2 : définir les chemins de fichiers

Spécifiez les chemins absolus ou relatifs du fichier texte source et du répertoire de sortie où chaque ligne sera enregistrée.

import com.groupdocs.merger.Merger;

Merger merger = new Merger("path/to/your/file.txt");

Étape 3 : créer une instance Merger

La classe Merger est le point d’entrée pour toutes les opérations de documents dans GroupDocs Merger.

import com.groupdocs.merger.Merger;
import com.groupdocs.merger.domain.options.TextSplitOptions;
import java.io.File;
import java.nio.file.Paths;

Étape 4 : configurer les options de division

TextSplitOptions vous permet de contrôler les délimiteurs de ligne, la nomenclature des sorties, et de choisir d’écraser ou non les fichiers existants.

String filePath = "YOUR_DOCUMENT_DIRECTORY/sample.txt";
String filePathOut = "YOUR_OUTPUT_DIRECTORY/";

Étape 5 : exécuter l’opération de division

Appelez la méthode split avec le dossier de sortie, le drapeau d’écrasement et l’extension de fichier souhaitée. La méthode renvoie une collection de chemins de fichiers générés, que vous pouvez consigner ou traiter davantage.

Merger merger = new Merger(filePath);

Paramètres expliqués

  • Dossier de sortie – où chaque document ligne sera écrit.
  • Drapeau d’écrasementtrue remplace les fichiers existants portant le même nom.
  • Extension de fichier – choisissez ".txt" pour du texte brut, ou ".pdf" pour obtenir un PDF par ligne.

Problèmes courants et solutions

  • Erreurs de chemin de fichier – vérifiez que le fichier d’entrée existe et que le répertoire de sortie est accessible en écriture.
  • Problèmes d’autorisations – exécutez la JVM avec des permissions système suffisantes ou ajustez les ACL du dossier.
  • Conflits de version – assurez-vous que la version du JAR GroupDocs Merger correspond à vos autres dépendances ; utilisez la même version majeure sur l’ensemble de la pile.

Applications pratiques

Diviser de grands fichiers texte en documents basés sur les lignes est utile pour :

  1. Pipelines de traitement de données – alimenter chaque ligne à un micro‑service séparé ou à un job Spark.
  2. Gestion des fichiers journaux – archiver chaque entrée de journal comme un fichier distinct pour une récupération rapide et des audits de conformité.
  3. Segmentation de contenu – transformer un brouillon d’article massif en extraits par phrase ou par ligne pour des plateformes d’édition collaborative.

Considérations de performance

Lors du traitement de fichiers très volumineux :

  • Optimisation de la mémoire – utilisez l’API de streaming de GroupDocs Merger ; évitez de charger le fichier entier dans une String.
  • Traitement par lots – divisez les fichiers en morceaux (par ex., 10 000 lignes par lot) pour maintenir un I/O disque fluide.
  • Ajustement de la JVM – augmentez le tas (-Xmx2g) uniquement si vous prévoyez un traitement supplémentaire en mémoire au‑delà de l’opération de division.

Conclusion

Vous savez maintenant comment diviser le contenu d’un grand fichier texte en documents ligne séparés en utilisant GroupDocs Merger pour Java. Cette technique améliore l’évolutivité, permet le traitement parallèle et simplifie la gestion des données en aval.

Prochaines étapes

  • Expérimentez d’autres formats de sortie tels que PDF ou DOCX en modifiant l’extension de fichier dans TextSplitOptions.
  • Combinez l’opération de division avec les fonctionnalités merge et watermark de GroupDocs Merger pour créer des flux de travail documentaires de bout en bout.
  • Intégrez la solution dans un service Spring Boot ou une fonction serverless pour des pipelines de traitement automatisés.

Questions fréquemment posées

Q : Puis‑je diviser un fichier en paragraphes au lieu de lignes ?
R : L’API prête à l’emploi divise selon les délimiteurs de ligne, mais vous pouvez fournir un délimiteur personnalisé (par ex., "\n\n") pour traiter les paragraphes séparés par des lignes vides comme unités de division.

Q : GroupDocs Merger est‑il gratuit pour les projets commerciaux ?
R : Un essai gratuit est disponible pour l’évaluation ; une licence payante est requise pour les déploiements en production.

Q : Que se passe‑t‑il si mon fichier texte contient des caractères Unicode ?
R : La bibliothèque détecte automatiquement l’encodage UTF‑8 ; vous pouvez également spécifier un autre jeu de caractères dans le constructeur Merger si nécessaire.

Q : Comment le diviseur gère‑t‑il les fichiers extrêmement volumineux (multi‑Go) ?
R : Il diffuse chaque ligne vers le disque, maintenant l’utilisation de la mémoire sous 100 Mo quel que soit la taille de la source, ce qui le rend adapté aux fichiers multi‑Go.

Q : L’API prend‑elle en charge d’autres formats que TXT ?
R : Oui – vous pouvez exporter chaque ligne au format PDF, DOCX, HTML, ou tout autre des plus de 50 formats répertoriés dans la documentation du produit.

Ressources


Dernière mise à jour : 2026-08-26
Testé avec : GroupDocs Merger 23.11 for Java
Auteur : GroupDocs

// Create TextSplitOptions instance specifying mode to split by lines.
TextSplitOptions splitOptions = new TextSplitOptions(filePathOut, true, true);
merger.split(splitOptions);

Tutoriels associés