Lucene索引中的编码问题,好郁闷
doc.add(new Field("contents", new FileReader(file)));开始时,我是把内容读取出来,直接索引在索引文件里,这样就方便在查询时读取内容并高亮显示.但是给果发现,这个东西很受字符编码的影响,于是,我就在文件读取时加上一个编码,可是发现中文检索不出来.后来,我就换了一个:doc.add(new Field("contents", FileDocument.readFileContents(file.getCanonicalPath(), charset), Field.Store.YES, Field.Index.TOKENIZED));迷惑之中,我尝试用InputStreamReader类实例来代替FileReader,没想到,结果居然能成功,代码如下:doc.add(new Field("contents", new InputStreamReader(new FileInputStream(file.getCanonicalPath()), charset)));
Tags: FileReader  Lucene  InputStreamReader  索引  搜索引擎  
Lucene入门笔记(BUS01)
建立索引 // 建立索引就用到Document,IndexWriter,Field。// 最简单的步骤就是:// 首先分别new 一个Document,IndexWriter,Field// 然后用Doument.add()方法加入Field,// 其次用IndexWrtier.addDocument()方法加入Document。// 最后调用一下IndexWriter.close()方法关闭输入索引,这一步非常的重要只有调用这个方法索引才会被写入索引的目录里,而这是被很多初学的人所忽略的。// 全文的搜索主要是用:IndexSearcher,Query,Hits,Document(都是Query的子类),有的时候用QueryParser// 主要步骤:// 1.new QueryParser(Field字段,new 分析器)// 2.Query query = QueryParser.parser(“要查询的字串”);这个地方我们可以用反射api看一下query究竟是什么类型// 3.new IndexSearcher(索引目录).search(query);返回Hits// 4.用Hits.doc(n);可以遍历出Document// 5.用Document可得到Field的具体信息了。// 其实1 ,2两步就是为了弄出个Query 实例,究竟是什么类型的看分析器了。
Tags: Lucene  搜索引擎  
开始研究Lucene,这是工作
经理给我两新任务,第一个就是Lucene来开发一个站内搜索。这个东西我以前有过兴趣,研究过一点点,但是,没有上手,后来就放弃了,没想到,现在还有机会重新捡起来。心里甚是开心。找了两天的资料,现在,基本上对Lucene有了一定的了解,也对这个任务有了点想法。要做这样一个站内搜索,其实就是对网站进行索引,以及搜索,这两个功能正好是Lucene的功能,但是,经理要求,要像GG和百度一样,对网页进行索引,而不是对数据库进行索引,所以,我不得不考虑再做一个WEB爬虫来对站内的网页进行索引。整个任务,分析下来,就有三块了,第一,爬虫模块,第二,索引和搜索模块(Lucene),第三,索引搜索中用到的中文分词模块。这三大块,没有一块是我现在熟悉的,看来,一切得从0开始。----------------------------索引和搜索模块(Lucene),简单介绍一下:
Tags: Lucene  搜索引擎  索引  中文分词  爬虫  
分页:[«] 1[»]
分类最近文章
    <#CACHE_INCLUDE_CATEGORY__HTML#>
Powered By Z-Blog   STYLE by busfly . FatMouse
Copyright © 2007 巴士飞扬技术博客. . 沪ICP备07027972号. 会员群1(J2EE为主):3769186.