lucene.net 怎么样获取分词后的结果,也可以说是读取词库中的词...

 我来答
LastAreas
2011-03-10 · 超过15用户采纳过TA的回答
知道答主
回答量:31
采纳率:0%
帮助的人:32.2万
展开全部
//analyzer是你用的分词器实例,field是搜索的域,content是搜索的内容
TokenStream tokenStream = analyzer.TokenStream(field, content);
Token token = null;
while((token=tokenStream.Next() != null)
{
Console.WriteLine(token.ToString());
}
追问
我的意思是这样的,lucene不是会建立一个索引库吗,我是想读取索引库中的数据也......
追答
我用的lucene.net 2.0,其他版本有类似参数,你要读索引库中的数据,首先要保证在建立索引的时候使用参数,Field.Store.YES。代码如下:
string content = "Hello, the world!";
StandardAnalyzer analyzer = new StandardAnalyzer();
IndexWriter indexWriter = new IndexWriter("Index", analyzer, true);
Document docment = new Document();
//将"Hello, the world存储到Content域中(Filed.Store.YES)"
docment.Add(new Field("Content", content, Field.Store.YES, Field.Index.TOKENIZED));
indexWriter.AddDocument(docment);
indexWriter.Close();

//读索引
IndexReader indexReader = IndexReader.Open("Index");
for (int i = 0; i < indexReader.MaxDoc(); i++)
{
//取索引中所有Content域的数据
Console.WriteLine(indexReader.Document(i).Get("Content"));
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式