在Word文档中搜索关键字并将其编入索引

时间:2012-08-21 12:31:36

标签: c# search indexing ms-word

我正在寻找一种搜索Word文档并显示符合搜索条件的文档结果的方法。我将在这里更详细地描述这个场景。

在Windows系统上,我有一堆文件夹。每个文件夹都有很多Word文档。现在我需要一个可以在特定文件夹中搜索可能在这些word文档中出现的关键字的应用程序。类似于MySQL拥有的 FULLTEXT 搜索。

因此,如果我搜索以下关键字:microsoft, windows XP,那么我希望它列出包含一个或多个关键字的每个Word文档。

当然,这些关键字出现在文档中的次数越多,其排名应该在结果列表中越高。

现在我的问题是,有没有这样的工具呢?或者我最好自己在C#.NET中编写这样的工具?如果是这样,我需要查看哪些API?

PS。它们是.doc.docx个文件。

3 个答案:

答案 0 :(得分:2)

看起来你需要一个成熟的搜索引擎给我,包括解析,索引,排名,搜索等等。你自己实现它可能不是很愉快...你可以看一下Apache Lucene

答案 1 :(得分:0)

你的鼻子下方有一个工具。这是Windows搜索and it has an API,它可以完美地满足您的需求。

如果您没有安装Office,则可能必须安装filter packs以提供特定于Office的索引。

答案 2 :(得分:0)

索引在Windows中可用,可以处理Word文档:

如果您想构建自己的索引,可以使用IFilters从文档中提取文本:How to extract text from MS office documents in C#