2010-09-06 4 views

Répondre

6

Vous pouvez utiliser les filtres conçus pour/utilisés par le service d'indexation. Ils sont conçus pour extraire le texte brut de divers documents, ce qui est utile pour rechercher dans un document. Vous pouvez l'utiliser pour les fichiers Office, PDF, HTML et ainsi de suite, essentiellement tout type de fichier qui a un filtre. Le seul inconvénient est que vous devez installer ces filtres sur le serveur, donc si vous n'avez pas un accès direct au serveur, cela peut ne pas être possible. Certains filtres sont pré-installés avec Windows, mais d'autres, comme le PDF, doivent être installés. Pour une mise en œuvre C#, consultez cet article: Using IFilter in C#

+0

C'est exactement ce dont j'avais besoin. Merci! –

0

modèle Utiliser l'objet Word, il est le seul moyen fiable car format Word n'est pas ouvert et varient d'une version à.

+0

Mais comment? C'est une réponse inutile sans un échantillon de code. – KyleM

4

PDF:

Vous avez plusieurs options.

pdftotext:
Téléchargez le XPDF utilities. Dans le fichier .zip, il existe plusieurs utilitaires de ligne de commande. L'un est pdftotext(.exe). Il peut extraire tout le contenu textuel d'un fichier PDF bien agencé. Saisissez pdftotext -help pour en savoir plus sur ses paramètres de ligne de commande.

Ghostscript:
Installer latest version of Ghostscript (v.8.71). Ghostscript est un interpréteur PostScript et PDF. Vous pouvez l'utiliser pour extraire le texte d'un PDF ainsi:

gswin32c.exe^
-q^
-sFONTPATH=c:/windows/fonts^
-dNODISPLAY^
-dSAFER^
-dDELAYBIND^
-dWRITESYSTEMDICT^
-dSIMPLE^
-f ps2ascii.ps^
-dFirstPage=3^
-dLastPage=7^
input.pdf^
-dQUIET 

Ce sera le texte de sortie contenu dans les pages 3-7 de input.pdf à stdout. Vous pouvez rediriger cela vers un fichier en ajoutant > /path/to/output.txt à la commande. (Assurez-vous que le programme utilitaire PostScript ps2ascii.ps est présent dans votre sous-répertoire de Ghostscript lib.)

Si vous omettez le paramètre -dSIMPLE, la sortie de texte sera devinant les sauts de ligne et des espacements de mots. Pour plus de détails, consultez les commentaires dans le fichier ps2ascii.ps lui-même. Vous pouvez même remplacer ce paramètre par -dCOMPLEX pour obtenir des informations supplémentaires sur le formatage du texte.

+0

XPDF fonctionne mieux que tout ce que j'ai trouvé – chrisfs

0

Vous pourriez vouloir regarder PDFBox. Voici un lien vers une page de projet de code vous montrant comment l'utiliser en C# ainsi que d'autres commentaires utiles.

http://www.codeproject.com/KB/string/pdf2text.aspx

Comme pour Word la suggestion d'utiliser le mot modèle d'objet est probablement le plus précis.

Questions connexes