资源简介
基于lucene实现word、ppt、excel、pdf、txt全文检索
代码片段和文件信息
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.io.StringReader;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.DateTools;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.SimpleFSDirectory;
import org.apache.lucene.util.Version;
import org.apache.pdfbox.pdfparser.PDFParser;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.util.PDFTextStripper;
import org.apache.poi.hslf.HSLFSlideShow;
import org.apache.poi.hslf.model.Slide;
import org.apache.poi.hslf.model.TextRun;
import org.apache.poi.hslf.usermodel.RichTextRun;
import org.apache.poi.hslf.usermodel.SlideShow;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFDateUtil;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hwpf.HWPFDocument;
import org.apache.poi.hwpf.usermodel.Paragraph;
import org.apache.poi.hwpf.usermodel.Range;
import org.apache.poi.poifs.filesystem.DocumentEntry;
import org.apache.poi.poifs.filesystem.DocumentInputStream;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.util.LittleEndian;
/**
* 创建索引 Lucene 3.0+
* @author Administrator
*
*/
public class indexer {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
//保存索引文件的地方
String indexDir = “data\\test\\indexDir“;
//将要搜索TXT文件的地方
String dateDir = “data\\test\\dateDir“;
IndexWriter indexWriter = null;
//创建Directory对象
Directory dir = new SimpleFSDirectory(new File(indexDir));
//创建IndexWriter对象
//第一个参数是Directory第二个是分词器
//第三个表示是否是创建如果为false为在此基础上面修改
//第四表示表示分词的最大值,比如说new MaxFieldLength(2),就表示两个字一分,
//一般用IndexWriter.MaxFieldLength.LIMITED
indexWriter = new IndexWriter(dirnew StandardAnalyzer(Version.LUCENE_30)true
IndexWriter.MaxFieldLength.UNLIMITED);
File[] files = new File(dateDir).listFiles();
for (int i = 0; i < files.length; i++) {
Document doc = null;
if(files[i].getName().endsWith(“.txt“)){
doc = new Document();
//创建Field对象,并放入doc对象中
doc.add(new Field(“contents“ new FileReader(files[i])));
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 720 2011-12-15 09:09 LuceneFirstDemo\.classpath
文件 391 2011-12-15 09:03 LuceneFirstDemo\.project
文件 9932 2011-12-15 15:18 LuceneFirstDemo\bin\indexer.class
文件 2613 2011-12-15 15:21 LuceneFirstDemo\bin\searcher.class
文件 3780619 2008-02-11 17:31 LuceneFirstDemo\data\test\dateDir\ArcMap_Tutorial.pdf
文件 7168 2011-12-15 12:00 LuceneFirstDemo\data\test\dateDir\excelTest1.xls
文件 7168 2011-12-15 15:23 LuceneFirstDemo\data\test\dateDir\excelTest2.xls
文件 5053692 2007-03-30 00:00 LuceneFirstDemo\data\test\dateDir\Manual.pdf
文件 9216 2011-12-14 19:11 LuceneFirstDemo\data\test\dateDir\testDoc1.doc
文件 9216 2011-12-15 15:23 LuceneFirstDemo\data\test\dateDir\testDoc2.doc
文件 18432 2011-12-15 15:26 LuceneFirstDemo\data\test\dateDir\testPPT1.ppt
文件 18432 2011-12-15 15:27 LuceneFirstDemo\data\test\dateDir\testPPT2.ppt
文件 81 2011-12-14 18:36 LuceneFirstDemo\data\test\dateDir\testTxt1.txt
文件 71 2011-12-15 15:25 LuceneFirstDemo\data\test\dateDir\testTxt2.txt
文件 20 2011-12-15 15:27 LuceneFirstDemo\data\test\indexDir\segments.gen
文件 242 2011-12-15 15:27 LuceneFirstDemo\data\test\indexDir\segments_p
文件 440888 2011-12-15 15:27 LuceneFirstDemo\data\test\indexDir\_o.fdt
文件 84 2011-12-15 15:27 LuceneFirstDemo\data\test\indexDir\_o.fdx
文件 37 2011-12-15 15:27 LuceneFirstDemo\data\test\indexDir\_o.fnm
文件 6987 2011-12-15 15:27 LuceneFirstDemo\data\test\indexDir\_o.frq
文件 34 2011-12-15 15:27 LuceneFirstDemo\data\test\indexDir\_o.nrm
文件 75960 2011-12-15 15:27 LuceneFirstDemo\data\test\indexDir\_o.prx
文件 476 2011-12-15 15:27 LuceneFirstDemo\data\test\indexDir\_o.tii
文件 30648 2011-12-15 15:27 LuceneFirstDemo\data\test\indexDir\_o.tis
文件 1466301 2011-11-22 14:46 LuceneFirstDemo\lib\lucene-core-3.5.0.jar
文件 3824099 2011-12-14 18:10 LuceneFirstDemo\lib\pdfbox-1.6.0.jar
文件 10308868 2011-12-14 18:32 LuceneFirstDemo\lib\pdfbox-app-1.6.0.jar
文件 1675036 2010-10-29 20:40 LuceneFirstDemo\lib\poi-3.7-20101029.jar
文件 840218 2010-10-29 20:40 LuceneFirstDemo\lib\poi-scratchpad-3.7-20101029.jar
文件 13220 2011-12-15 15:18 LuceneFirstDemo\src\indexer.java
............此处省略12个文件信息
- 上一篇:佳博标签打印机 tspl指令集
- 下一篇:阿里巴巴大数据竞赛 多个赛事的ppt收集
相关资源
- 阿里巴巴大数据竞赛 多个赛事的ppt收
- 2015年全国大学生计算机设计大赛微课
- EDA技术实用教程-VerilogHDL版(第四版)
- 智能小车课程讲义ppt一
- 云平台事业部转正答辩
- 视觉SLAM十四讲PPT-高翔亲笔
- 数学模型第五版---姜启源 教材配套
- 全国大学生计算机PPT设计大赛作品p
- 最好的华为网络技术入门级教材-官方
- 和秋叶一起学Word第2版.秋叶.2017-8(带
- 和秋叶一起学Word
- PDF转WORD软件
- 图像工程上册:图像处理第3版PPT+PD
- Lucene实战第2版源代码
- 鼎捷T100内部培训PPT
- 教学课件ppt.rar
- 安徽大学编译原理课程ppt/往年考试试
- 中科大高级计算机网络ppt
- 浙大赵智大版高电压技术PPT.zip
- 多用户多级目录文件系统的实现(代
- 一天弄懂深度学习-李宏毅PPT+PDF超级高
- 海康威视智慧路灯产品介绍 .pptx
- 计算机通信网PPT教程
- 电子科技大学何子述信号与系统资料
- 《计算机网络第七版谢希仁 编著》原
- 2019年MathorCup荣誉奖论文和答辩PPT.zi
- siliver强化学习ppt以及sutton的reinforce
- 清华大学线性系统理论PPT
- 发布会全图型PPT,逼格+惊艳+互联网风
- 模式识别-黄庆明_中科院课件包含wo
评论
共有 条评论