您的位置:首页 > 其它

lucene.net多目录搜索及合并索引

2013-04-16 11:25 363 查看
=================多目录搜索 ============

// 我们可以使用 MultiReader 或 MultiSearcher 搜索多个索引库。

//string indexPath = @"D:\IndexFilePath";
//string indexPath2 = @"D:\IndexFilePath2";
//MultiReader reader = new MultiReader(new IndexReader[] { IndexReader.Open(indexPath), IndexReader.Open(indexPath2) });
//IndexSearcher searcher = new IndexSearcher(reader);
//Hits h = searcher.Search(query);

//或

//IndexSearcher searcher1 = new IndexSearcher(reader1);
//IndexSearcher searcher2 = new IndexSearcher(reader2);
//MultiSearcher searcher = new MultiSearcher(new Searchable[] { searcher1, searcher2 });
//Hits hits = searcher.Search(query);

=====================合并两个目录的索引文件=============

private void btnHeBing_Click(object sender, EventArgs e)
{
string path1= txtIndexPath1.Text;
string path2 = txtIndexPath2.Text;
Lucene.Net.Store.Directory directory1 = FSDirectory.GetDirectory(path1, false);
Lucene.Net.Store.Directory directory2 = FSDirectory.GetDirectory(path2,false);
//将目录1合并到了目录2中
IndexWriter writer = new IndexWriter(directory2, new PanGuAnalyzer(), false);
writer.AddIndexes(new Lucene.Net.Store.Directory[] { directory1 });
//writer.Optimize();
writer.Close();
MessageBox.Show("合并完毕");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: