搜索文件内容

时间:2011-11-23 05:42:04

标签: wpf

我有一个包含doc,excel,ppt等文件的文件夹。一旦用户从组合中选择了一个类别,我就分配了与特定选择相关的关键字。我的wpf应用程序必须搜索关键字的整个文件夹和文件内容,并在gridview中显示匹配的文件。还必须保持速度和性能

我该如何编写此功能?

1 个答案:

答案 0 :(得分:1)

您的查询的WPF部分非常简单;只需将目标控件的ItemsSource设置为搜索结果...

List<string> MyKeyWords = GetKeywords();

var allDirectories = new DirectoryInfo(SearchDirectoryName).GetDirectories("*",              SearchOption.AllDirectories);

myGrid.ItemsSource = (from di in allDirectories from fi in di.GetFiles() where HasKeyWordMatch(fi, MyKeyWords) select fi);

然后将网格绑定到数据模板中的相应属性。

更难以解决的是'HasKeyWordMatch'谓词,它可能采用FileInfo对象和关键字列表,如果找到匹配则返回true / false。由于您要扫描专有格式,因此您需要为每种格式编写扫描引擎。