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("合并完毕");
}
// 我们可以使用 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("合并完毕");
}
相关文章推荐
- Lucene.net 从创建索引到搜索的代码范例
- Lucene.Net 优化索引生成,即搜索显示优化
- Lucene.net多索引搜索,条件过滤操作
- Lucene.NET合并索引库 搜索语法字符串
- 利用Lucene.net搭建站内搜索(3)---创建索引
- 基于Lucene.Net包装的傻瓜索引搜索系统
- .net lucene 实战搜索(二)----- 基本之索引
- 用Lucene.net对数据库建立索引及搜索
- 用Lucene.net对数据库建立索引及搜索
- 用Lucene.net对数据库建立索引及搜索
- Lucene.net 实现近实时搜索(NRT)和增量索引
- 用Lucene.net对数据库建立索引及搜索 (2)
- Lucene.Net核心类简介,创建索引,搜索,Lucene高亮组建演示,Rss获得最新帖子,只索引帖子的有意义部分,在AddDocument之前先移除旧有文档.
- Lucene.NET建立,搜索多个索引文件
- Lucene.net搜索——创建索引
- c#使用Lucene.net创建索引,实现搜索的代码示例
- 使用Lucene.Net管理索引实现搜索
- 利用Lucene.net搭建站内搜索(3)---创建索引
- 利用Lucene.net搭建站内搜索(3)---创建索引
- 用Lucene.net对数据库建立索引及搜索<转>