Modifier Word DOCX à l'aide de Java

Vous pouvez facilement modifier par programmation tous les formats de documents de traitement de texte tels que DOC, DOCX ou DOTM. En tant que développeur Java, vous pouvez modifier des documents Word dans vos applications Java. Dans cet article, vous apprendrez comment modifier des documents Word à l’aide de Java.

Les sujets suivants sont abordés/couverts dans cet article:

API Java pour l’édition de documents Word

Pour éditer les fichiers DOCX, j’utiliserai l’API GroupDocs.Editor for Java. Il vous permet de modifier par programmation des documents de traitement de texte, des feuilles Excel ou des documents d’autres formats pris en charge. L’API vous permet de charger des documents et de les convertir en HTML. Il fournit du HTML à l’interface utilisateur externe pour l’édition, puis enregistre le HTML dans le document d’origine après manipulation. Vous pouvez télécharger le JAR de l’API ou simplement ajouter la configuration pom.xml suivante dans vos applications Java basées sur Maven pour essayer les exemples de code mentionnés ci-dessous.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-editor</artifactId>
        <version>20.11.0</version> 
</dependency>

Modifier des documents Word à l’aide de Java

Vous pouvez facilement modifier des documents Word par programmation en suivant les étapes simples mentionnées ci-dessous:

  • Définir WordProcessingLoadOptions
  • Créez une instance de la classe Editor
  • Spécifiez le chemin d’accès au fichier DOCX d’entrée
  • Définir WordProcessingEditOptions
  • Appelez la méthode edit() et obtenez l’objet EditableDocument
  • Récupérez le contenu du document et les ressources associées à partir de EditableDocument
  • Appelez la méthode getEmbeddedHtml() pour obtenir le document sous la forme d’une seule chaîne encodée en base64
  • Mettre à jour le contenu en appelant la méthode replace()
  • Appelez la méthode fromMarkup() et créez une nouvelle instance EditableDocument
  • Définir WordProcessingSaveOptions
  • Appelez la méthode save() et enregistrez le fichier mis à jour
  • Jeter les objets

L’exemple de code suivant montre comment modifier des fichiers DOCX à l’aide de Java.

//Fichier d'entrée
String inputFilePath = "C:\\Files\\Sample.docx";

//Charger le document avec les options de chargement
WordProcessingLoadOptions wordLoadOptions = new WordProcessingLoadOptions();
wordLoadOptions.setPassword("some password"); // Password if required
Editor editor = new Editor(inputFilePath, wordLoadOptions);

// Spécifier les options d'édition
WordProcessingEditOptions editOptions = new WordProcessingEditOptions();
editOptions.setEnableLanguageInformation(true);
editOptions.setEnablePagination(true);

//Ouvrir le document d'entrée à modifier
EditableDocument beforeEdit = editor.edit(editOptions);

//Récupérer le contenu du document et les ressources associées à partir d'un document modifiable
String content = beforeEdit.getContent();
List<IImageResource> images = beforeEdit.getImages();
List<FontResourceBase> fonts = beforeEdit.getFonts();
List<CssText> stylesheets = beforeEdit.getCss();

//Obtenir le document sous la forme d'une seule chaîne encodée en base64, où toutes les ressources (images, polices, etc.) sont intégrées dans cette chaîne avec le contenu textuel principal
String allEmbeddedInsideString = beforeEdit.getEmbeddedHtml();
//Modifier le contenu
String allEmbeddedInsideStringEdited = allEmbeddedInsideString.replace("Subtitle", "Edited subtitle");

//Créer une nouvelle instance EditableDocument à partir du contenu et des ressources modifiés
EditableDocument afterEdit = EditableDocument.fromMarkup(allEmbeddedInsideStringEdited, null);

//chemin du document de sortie
String outputPath = "C:\\Files\\Sample_output.docx";
//Enregistrer les options
WordProcessingSaveOptions saveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Docx);
//Enfin, enregistrez dans le chemin
editor.save(afterEdit, outputPath, saveOptions);

//Disposez les objets
beforeEdit.dispose();
afterEdit.dispose();
editor.dispose();
Modifier des documents Word à l'aide de Java

Modifier des documents Word à l’aide de Java

La classe WordprocessingLoadOptions fournit diverses options pour charger des documents Word tels que DOC, DOCX, RTF, ODT, etc. dans la classe Editor.

  • La méthode setPassword permet de spécifier le mot de passe pour ouvrir les documents protégés par mot de passe.

La classe Editor est la classe principale qui fournit des méthodes pour charger, éditer et enregistrer des documents de tous les formats pris en charge. La classe WordProcesingEditOptions vous permet de spécifier des options personnalisées pour ouvrir les documents de traitement de texte à modifier.

  • La méthode setEnabledLanguageInformation spécifie si les informations de langue sont exportées vers le balisage HTML sous la forme d’attributs HTML ’lang'.
  • La méthode setEnablePagination permet d’activer ou de désactiver la pagination dans le document HTML résultant.

La classe EditableDocument stocke le document en interne et fournit des méthodes pour générer un balisage HTML et produire des ressources. La classe WordProcessingSaveOptions fournit des options personnalisées pour générer et enregistrer des documents Word après modification.

Obtenez une licence gratuite

Vous pouvez essayer l’API sans limitation d’évaluation en demandant une licence temporaire gratuite.

Conclusion

Dans cet article, vous avez appris comment modifier des documents Word à l’aide de Java. Vous pouvez en savoir plus sur GroupDocs.Editor pour l’API Java en utilisant la documentation. En cas d’ambiguïté, n’hésitez pas à nous contacter sur le forum.

Voir également