Lucene.Net最高版本为3.0.3,并且apache已经不再提供Lucene.Net的更新,没仔细研究过Lucene.Net的所有版本,Lucene.Net3.0.3遍历TokenStream获取Token对象,已经和以前的版本有了很大的区别,很多方法都已经删除了或者过时。
 以前版本的Lucene.Net从TokenStream中获取Token时调用Next方法就行了,源代码如下

public void ReusableTokenStream2(){string testwords = "web开发网";SimpleAnalyzer simple = new SimpleAnalyzer();TokenStream ts = simple.ReusableTokenStream("", new StringReader(testwords));Token token;while ((token = ts.Next()) != null){Console.WriteLine(token.TermText());}ts.Close();}

  但是在Lucene.Net3.0.3中TokenStream已经不存在Next方法,而是需要ITermAttribute属性接口来遍历。源代码如下

  public void ReusableTokenStream3(){Lucene.Net.Analysis.Standard.StandardAnalyzer a = new Lucene.Net.Analysis.Standard.StandardAnalyzer(Lucene.Net.Util.Version.LUCENE_30);string s = "web开发网";System.IO.StringReader reader = new System.IO.StringReader(s);Lucene.Net.Analysis.TokenStream ts = a.TokenStream(s, reader);bool hasnext = ts.IncrementToken();Lucene.Net.Analysis.Tokenattributes.ITermAttribute ita;while (hasnext){ita = ts.GetAttribute<Lucene.Net.Analysis.Tokenattributes.ITermAttribute>();Console.WriteLine(ita.Term);hasnext = ts.IncrementToken();}ts.CloneAttributes();reader.Close();a.Close();Console.ReadKey();}

转载于:https://www.cnblogs.com/GarsonZhang/p/10544526.html

Lucene.Net 3.0.3如何从TokenStream中获取token对象相关推荐

  1. Lucene 3.0.0的结构遍历TokenStream的内容

    使用Lucene 3.0.0的结构遍历TokenStream的内容. - 博客园 http://www.makaidong.com/%E5%8D%9A%E5%AE%A2%E5%9B%AD%E7%9F% ...

  2. lucene使用3.0.3_Jirasearch 2.0狗粮:使用Lucene查找我们的Jira问题

    lucene使用3.0.3 几年前,我首先构建并发布了Jirasearch ,它是用于薄型包装Lucene服务器的有趣的狗粮测试用例,以针对我们的Jira问题公开强大的搜索UI. 这很好地展示了Luc ...

  3. lucene使用3.0.3_Apache Lucene 5.0.0即将发布!

    lucene使用3.0.3 终于,在一系列强大的4.x功能(最近是4.10.2)发布之后,我们终于在努力开发另一个主要的Apache Lucene版本! 没有确切时间的承诺(完成时就完成了!),但是我 ...

  4. lucene使用3.0.3_使用Apache Lucene 4.3轻松进行搜索

    lucene使用3.0.3 Lucene是用Java编写的全文搜索引擎,可以为任何应用程序提供强大的搜索功能. Lucene的核心是基于文件的全文本索引. Lucene提供API创建该索引,然后向该索 ...

  5. 让盘古分词支持最新的Lucene.Net 3.0.3

    原文:让盘古分词支持最新的Lucene.Net 3.0.3 好多年没升级过的Lucene.Net最近居然升级了,到了3.0.3后接口发生了很大变化,原来好多分词库都不能用了,所以上次我把MMSeg给修 ...

  6. Lucene 7.5.0 索引文件之nvdnvm

    nvd&&nvm用来存储域的标准化值(normalization values),这两个索引文件记录了每一篇文档中每一种域的标准化值跟索引信息.在Lucene 7.5.0中,标准化值的 ...

  7. Lucene 2.2.0发布自带的HTMLParser的使用

    Lucene 2.2.0发行包中自带的org.apache.lucene.demo包中,有一个为HTML和TXT文件建立索引.删除索引以及实现检索的实例,其中在org.apache.lucene.de ...

  8. Lucene 6.1.0 入门Demo

    根据Lucene 6.1.0 及JDK 1.8最新版本,结合前几篇文章所写的最新Demo. 代码如下: package HighLightSearch;import java.io.File; imp ...

  9. Lucene 4.6.1 java.lang.IllegalStateException: TokenStream contract violation

    这是旧代码在新版本Lucene中出现的异常,异常如下: Exception in thread "main" java.lang.IllegalStateException: To ...

最新文章

  1. TextView SpannableString 使用之实现可点击超链接效果
  2. python中xpath_Python爬虫之Xpath语法
  3. 用table展示树形结构数据_复习一下数据结构(二)——2.2 树形索引(23树)
  4. Windows10 下搭建汇编语言开发环境( 利用 DOSBOX 和 MASM32 )
  5. keil如何添加h文件_如何给PDF文件添加水印?分享给PDF批量加水印的方法
  6. java 内部类定于_搞懂 JAVA 内部类
  7. 你的早鸟票特权仅剩2天!百度、快手、商汤、图森等重磅嘉宾确认出席AI ProCon 2019...
  8. python多进程编程实例_[python] Python多进程编程技术实例分析
  9. 279.完全平方数(力扣leetcode) 博主可答疑该问题
  10. 标定学习笔记(五)-- Halcon手眼标定例程:Hand-eye-Calibration with a moving cam
  11. Java模拟ssh交互_java模拟ssh执行shell命令
  12. SIFT原作者David Lowe主页
  13. 【Unity学习笔记】Canvas Scaler组件
  14. Android权限Uri.parse的几种用法
  15. Blender2.9基础二:UV篇
  16. 文章复现 子宫腺肌病在位内膜和异位病灶的单细胞转录组分析
  17. qt快速读取excel
  18. Zhong__MySQL笔记
  19. c语言打印出水花数,四叶玫瑰数,五角星数等等的数字
  20. pod的调度策略、定向调度、亲和性调度、污点、容忍污点

热门文章

  1. VS2010上连接SQLite数据库
  2. 自然语言3——官网介绍
  3. 算不算被虚度的这几年
  4. 请问asp.net网页里能显示tiff格式的图片吗?
  5. 利用Navicat Premium将SQL Server数据库转为My SQL数据库(解决Mac无法打开SQL Server 脚本文件的方法)
  6. 如何处理好与孩子沟通的关系?
  7. 全职带孩子可能会面临哪些问题?
  8. 有的时候看项目,和创业者交流,发现他们的企业
  9. 新模式卖保健品,怎么做到年入5百万?
  10. 手机扫描到WiFi时,WiFi站点知道吗?