Question

Je voudrais pouvoir lire le contenu des documents Office (pour un robot personnalisé).

Les versions bureautiques devant être lisibles datent de 2000 à 2007. Je veux principalement crawling words, excel et les documents powerpoint.

Je ne veux pas récupérer le formatage, seulement le texte qu’il contient.

Le robot d'exploration est basé sur lucene.NET si cela peut vous aider et est en c #.

J'ai déjà utilisé iTextSharp pour l'analyse de PDF

Était-ce utile?

La solution

Voici un une bonne nouvelle sur c-charpcor par Krishnan LN qui donne le code de base pour récupérer le texte d’un document Word en utilisant les assemblys Word Primary Interop.

En gros, vous obtenez le " WholeStory " propriété du document Word, collez-le dans le Presse-papiers, puis extrayez-le du Presse-papiers tout en le convertissant au format texte. L’étape du presse-papier est probablement effectuée pour supprimer le formatage.

Pour PowerPoint, vous procédez de la même manière, mais vous devez parcourir les diapositives, puis pour chaque diapositive, parcourir les formes, puis saisir le texte "TextFrame.TextRange.Text". propriété dans chaque forme.

Pour Excel, Excel pouvant être une source de données OleDb, il est plus simple d’utiliser ADO.NET. Voici un bon article de Laurent Bugnion qui décrit cette technique.

Autres conseils

Si vous utilisez déjà Lucene.NET, vous voudrez peut-être tirer parti des différents IFilters déjà disponibles pour cela. Consultez le projet open source SeekAFile . Il vous montrera comment utiliser un IFilter pour ouvrir et extraire ces informations de tout type de fichier où un IFilter est disponible. Il existe des IFilters pour Word, Excel, PowerPoint, PDf et la plupart des autres types de documents courants.

Il existe un excellent projet open source POI , seul inconvénient: il est écrit pour Java. . Le port .net est en quelque sorte très bêta.

Voici une bonne liste de divers outils permettant de convertir des documents Word en texte brut. peut alors faire quoi que ce soit avec.

Vous pouvez également envisager de consulter DtSearch (www.DtSearch.com). Bien qu’il s’agisse principalement d’un outil de recherche, il permet d’extraire du texte d’un grand nombre de types de fichiers et est considérablement moins cher que d’autres options telles que la technologie Oracle / Stellent OutsideIn ou son équivalent d’Autonomy.

J'utilise DtSearch depuis des années et je le trouve indispensable pour ce type de tâche.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top