
Microsoft Word documents sont une étape pour la création et le partage de contenu texte. Si vous développez des applications C# qui interagissent avec ces documents, vous pourriez avoir besoin d’extraire le texte d’eux. Cela pourrait être à des fins telles que l’analyse du texte ou l’extraire de sections spécifiques d’un document pour compiler dans un nouveau. Dans cet article de blog, nous allons plonger dans les méthodes pour extraire le texte des documents Word en C#.
Table des contenus
- C# Bibliothèque pour l’extraction de texte
- Comprendre l’extraction de texte dans les documents Word
- Guide étape par étape pour extraire le texte d’un document Word- Extrait de texte entre paragraphes
- Extrait de texte entre différents types de nœuds
- Extrait de texte basé sur les styles
C# Bibliothèque pour Extraction de texte
Aspose.Words per .NET is a powerful and user-friendly library designed for working with Word documents. It provides a comprehensive set of features, including text extraction, document creation, manipulation, and conversion. With Aspose.Words for .NET, developers can efficiently manage various aspects of Word documents, making it an invaluable tool for your development needs.
To get started, Téléchargez la bibliothèque or install it directly from Nouveau using the following command in the package manager console:
PM> Install-Package Aspose.Words
Comprendre l’extraction de texte dans les documents Word
Un document MS Word comprend différents éléments tels que les paragraphes, les tables et les images. Par conséquent, les exigences pour l’extraction du texte peuvent varier en fonction du cas d’utilisation spécifique. Vous pouvez avoir besoin d’extraire le texte entre les paragraphes, les notes, les commentaires, et plus encore.
Chaque élément dans un document Word est représenté comme un nœud. Par conséquent, pour traiter efficacement un document, vous aurez besoin de travailler avec ces nœuds.
Guide étape par étape pour extraire le texte d’un document Word
Dans cette section, nous mettrons en œuvre un extrait de texte C# pour les documents Word. Le flux de travail pour l’extraction de texte impliquera les étapes suivantes:
- Définissez les nodes à inclure dans le processus d’extraction.
- Extrait du contenu entre les nœuds spécifiés (y compris ou excluant les nœuds de départ et de fin).
- Utilisez les nœuds extraits clonés pour créer un nouveau document Word contenant le contenu extrait.
Créons une méthode appelée ExtractContent qui acceptera les nodes et d’autres paramètres pour effectuer l’extraction de texte.Cette méthode parsera le document et clone les nodes sur la base des paramètres suivants:
StartNode et EndNode: Ceux-ci définissent les points de départ et de fin pour l’extraction de contenu.Ils peuvent être des nœuds de niveau bloc (par exemple, Paragraph, Table) ou de niveau inline (par exemple, Run, FieldStart, BookmarkStart).- Pour les champs, passez l’objet correspondant FieldStart.
Pour les étiquettes, utilisez les nœuds BookmarkStart et BookmarkEnd.
Pour les commentaires, utilisez les nœuds CommentRangeStart et CommentRangeEnd.
IsInclusive: Ce paramètre détermine si les marquants sont inclus dans l’extraction.Si la configuration est fausse et les mêmes ou les nœuds consécutifs sont fournis, une liste vide sera retournée.
Voici la mise en œuvre complète de la méthode ExtractContent pour extraire du contenu entre les nœuds spécifiés:
En outre, certaines méthodes d’aide sont nécessaires par la méthode ExtractContent pour faciliter le travail d’extraction de texte:
Maintenant que nous avons nos méthodes prêtes, nous pouvons procéder à l’extraction du texte d’un document Word.
Extrait de texte entre les paragraphes d’un document Word
Pour extraire du contenu entre deux paragraphes dans un document Word DOCX, suivez les étapes suivantes:
- Téléchargez le document Word en utilisant la classe Document.
- Obtenez des références aux paragraphes de début et de fin en utilisant la méthode Document.FirstSection.Body.GetChild(NodeType.PARAGRAPH, int, boolean).
- Appelez la méthode ExtractContent(startPara, endPara, True) pour extraire les nodes dans un objet.
- Utilisez la méthode d’aide GenerateDocument(Document, extraitNodes) pour créer un document avec le contenu extrait.
- Enregistrer le nouveau document en utilisant la méthode Document.Save(string).
Voici un échantillon de code montrant comment extraire le texte entre les paragraphes 7 et 11 dans un document Word:
Extrait de texte entre différents types de nœuds
Vous pouvez également extraire du contenu entre différents types de nœuds. par exemple, extraire le contenu entre un paragraphe et une table et le sauvegarder dans un nouveau document Word.
- Téléchargez le document Word en utilisant la classe Document.
- Obtenez des références aux nœuds de départ et de fin en utilisant la méthode Document.FirstSection.Body.GetChild(NodeType, int, boolean).
- Appelez ExtractContent(startPara, endPara, True) pour extraire les nodes dans un objet.
- Utilisez la méthode d’aide GenerateDocument(Document, extraitNodes) pour créer un document avec le contenu extrait.
- Enregistrer le nouveau document en utilisant Document.Save(string).
Voici l’échantillon de code pour extraire le texte entre un paragraphe et une table en C#:
Extrait de texte basé sur des styles {#extrait-texte-entre-paragraphe-basé sur des styles}
Pour extraire du contenu entre les paragraphes basés sur les styles, suivez ces étapes. Pour cette démonstration, nous extrairons du contenu entre le premier “Title 1” et le premier “Title 3” dans le document Word:
- Téléchargez le document Word en utilisant la classe Document.
- Extrait des paragraphes dans un objet en utilisant la méthode d’aide ParagraphsByStyleName(Document, “Title 1”).
- Extrait des paragraphes dans un autre objet en utilisant ParagraphsByStyleName(Document, “Heading 3].
- Appelez ExtractContent(startPara, endPara, True) avec les premiers éléments des deux paragraphes.
- Utilisez la méthode d’aide GenerateDocument(Document, extraitNodes) pour créer un document avec le contenu extrait.
- Enregistrer le nouveau document en utilisant Document.Save(string).
Voici un échantillon de code pour extraire le contenu entre les paragraphes sur la base des styles:
En savoir plus sur l’extraction de texte
Explore additional scenarios for extracting text from Word documents through Cet article de documentation.
Obtenez une bibliothèque gratuite d’extracteurs de texte Word
You can obtain a Licence temporaire gratuite to extract text without evaluation limitations.
Conclusion
Aspose.Words pour .NET est une bibliothèque polyvalente qui simplifie le processus d’extraction de texte des documents Word en C#. Avec ses fonctionnalités étendues et l’API facile à utiliser, vous pouvez travailler efficacement avec les documents Word et automatiser différents scénarios d’extraction de texte. Que vous développiez des applications qui nécessitent le traitement de documents Word ou simplement l’extraction de texte, Aspose.Words pour .NET est un outil essentiel pour les développeurs.
To explore more features of Aspose.Words for .NET, check out the La documentation. If you have any questions, feel free to reach out via our Forum.
Vedi anche
- Créer des documents Word en C# sans MS Office
- Gérer des documents Word à partir de modèles dans C# .NET
Tip: You may want to check out the Aspose PowerPoint pour le mot Converter, which demonstrates the popular process of converting presentations to Word documents.
More in this category
- Convertir Word DOC/DOCX en PDF en C# .NET et Aspose.Words' Document Converter Plugin
- Genera codice a barre in documenti Word (.NET, C#) | Leggi codice a barre da Word (.NET)
- Extrait d'images à partir de documents Word dans C# Traitement automatique d'image
- Les rapports automatiques avec C# Mail Mergus Aspose.Words' Mail Mergus Plugin
- Trouver et remplacer le texte dans les documents Word en utilisant C# Édition automatique de mots