Frage

Ich habe eine Anwendung, bei der .DOC -Dateien darauf hochgeladen werden müssen. Diese Dokumente sollten dann Index sein und die gesamte Sammlung von Dokumenten sollte durchsucht werden. Dies wird auf einem Windows -Server ausgeführt, ohne dass Word installiert wird, mit IIS und SQLServer, aber ich würde lieber nicht an die vollständige Textindexierung von SQLServer gebunden sein.

Ich habe darüber nachgedacht, Lucene.net für den Indexierungsteil zu verwenden, und habe mich gefragt, wie der beste Weg, den Text aus den .doc -Dateien herauszuholen. Ich könnte den Text wahrscheinlich extrahieren, indem ich im gesamten Stream liest und dann einen Regex verwende, um regelmäßige Zeichen herauszuziehen, aber das scheint kräftig und anfällig für Fehler zu sein.

Ich habe einen Artikel über die Verwendung von Ifilters gesehen, die vielversprechend klingen, aber ich dachte, ich würde das da draußen herausstellen, da es nicht etwas ist, mit dem ich vertraut bin.

PS Wenn es wichtig ist, enthalten diese .DOC-Dateien Mail-Merge-Felder und es gibt keine andere aktuelle Alternative für das .doc-Format.

War es hilfreich?

Lösung

In Bezug auf eine Lösung, für die kein externes Programm erforderlich war, sieht es so aus, als ob die IFILTER -Lösung der richtige Weg ist (obwohl Sie dies als externes Programm zählen könnten).

Hier ist ein einfacher Codeplex -Artikel und Code, wie er erledigt werden kann: http://www.codeproject.com/kb/cs/ifilter.aspx

Andere Tipps

In unseren PHP -basierten Anwendungen haben wir immer externe Programme verwendet, die denen ähnelt: doc2txt. Dann haben wir den Text genommen und ihn in die Datenbank gespeichert. Wenn Sie bei Google nach "doc2txt" suchen, finden Sie viele verschiedene Programme, die genau dasselbe tun. Nehmen Sie einfach den, der am besten zu Ihnen passt.

Vielleicht möchten Sie auschecken Solr.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top