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

it2022-05-08  9

=================多目录搜索 ============

// 我们可以使用 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("合并完毕"); }

转载于:https://www.cnblogs.com/zjw520/archive/2013/04/16/3023710.html


最新回复(0)