`
deepfuture
  • 浏览: 4375469 次
  • 性别: Icon_minigender_1
  • 来自: 湛江
博客专栏
073ec2a9-85b7-3ebf-a3bb-c6361e6c6f64
SQLite源码剖析
浏览量:79862
1591c4b8-62f1-3d3e-9551-25c77465da96
WIN32汇编语言学习应用...
浏览量:69455
F5390db6-59dd-338f-ba18-4e93943ff06a
神奇的perl
浏览量:102784
Dac44363-8a80-3836-99aa-f7b7780fa6e2
lucene等搜索引擎解析...
浏览量:283983
Ec49a563-4109-3c69-9c83-8f6d068ba113
深入lucene3.5源码...
浏览量:14910
9b99bfc2-19c2-3346-9100-7f8879c731ce
VB.NET并行与分布式编...
浏览量:66977
B1db2af3-06b3-35bb-ac08-59ff2d1324b4
silverlight 5...
浏览量:31807
4a56b548-ab3d-35af-a984-e0781d142c23
算法下午茶系列
浏览量:45791
社区版块
存档分类
最新评论

lucene-索引word文档

阅读更多

1、通过POI项目来索引。

public class POIWordDocHandler implements DocumentHandler{

public Document getDocument(InputStream is)throws DocumentHandlerException{

StringbodyText=null;

try{//提取文本字段,接收word文档的inputstream对象,允许把原文写入writer类,从wrtier类提取

WordDocument wd=new wordDocument(is);

StringWriterdocTextWriter=new StringWriter();

wd.writeAllText(bew PrintWriter(docTextWriter));

docTextWriter.close();

bodyText=docTextWriter.toString();

}

catch(Exception e){

throw new DocumentHandlerException("cannot extracttext from a word document",e);

}

if((bodyText!=null)&&(bodyText.trim().length()>0)){

Document doc=new Document();

doc.add(Field.UnStored("body",bodyText));

return doc;

}

returnnull;

}

public static void main() throwsException{

POIWordDocHandler handler=new POIWordDocHandler();

Documentdoc=handler.getDocument(new FileInputStream(newFile(args[0])));

System.out.println(doc);

}

}

2、使用TextMining.org包API,支持从WORD6/95

public class TextMiningWordDocHandler implementsDocumentHandler{

publicDocument getDocument throws DocumentHandlerException(){

String bodyText=null;

try{

bodyText=newWordExtractor().extractText(is);//从InputStream对象中提取文本

}

catch (Exception e){

throw new DocumentHandlerException("cannot extract text from a worddocument",e);

}

 

if((bodyText!=null)&&(bodyText.trim().length()>0)){

Document doc=new Document();

doc.add(Field.unStored("body",bodyText));

return doc;

}

return null;

}

 

publicstatic void main(String[] args) throws Exception{

TextMiningWordDocHandler handler=newTextMiningWordDocHandler();

Document doc=handler.getDocument(new FileInputStream(newFile(args[0])));

System.out.println(doc);

}

}

分享到:
评论

相关推荐

    最全的lucene-2.4.0jar包

    1. **Lucene核心库**:`lucene-core-2.4.0.jar` 是Lucene的核心组件,提供了索引和查询的基本功能,如文档的添加、删除、更新,以及查询解析和执行。 2. **Analyzer组件**:`lucene-analyzers-2.4.0.jar` 包含了...

    MMAnalyzer 分词必导入jar包(lucene-core-2.4.1.jar je-analysis-1.5.3.jar)

    `lucene-core-2.4.1.jar`是Lucene的核心库,包含了Lucene的基础组件和API,如文档处理、索引操作、查询构造等,这些是MMAnalyzer进行分词工作所必需的。 在实际项目中,正确导入这两个JAR包是确保MMAnalyzer正常...

    lucene-6.5.0工具包

    4. **文档处理**:能读取和索引多种格式的文件,如HTML、PDF、Word等,使得索引内容多样化。 5. **实时搜索**:Lucene的索引更新可以在短时间内完成,实现动态索引和实时搜索。 6. **内存和磁盘管理**:通过缓存...

    毕设 Lucene解析索引PDF文档的内容

    iTextPDFExtractor.java ------ ----使用iText解析PDF 文档代码 PDFBoxHello.java ----------- --PDFBox测试代码 PDFBoxLuceneIndex.java ------ --PDFBox创建PDF文件的Lucene...-- POI处理Excel和Word文档代码

    最新版windows lucene-8.10.0.zip

    7. **更新和删除索引**:Lucene支持动态更新索引,当文档内容发生变化时,可以快速地反映到索引中;同样,也可以方便地从索引中删除文档。 8. **多线程支持**:在Windows环境下,Lucene可以利用多核处理器的优势,...

    lucene-3.0.0-src.zip

    1. 文档索引:Lucene的核心工作是将非结构化的文本数据转换为结构化的索引。这一过程包括分词(Tokenization)、词干提取(Stemming)和停用词处理(Stop Word Filtering),以及创建倒排索引(Inverted Index)等...

    jakarta-lucene-1.9-final.zip_lucene_lucene 1.9 final j

    1. **高效的索引**:Lucene支持实时索引,即在添加、删除或更新文档时无需重建整个索引。 2. **强大的搜索功能**:除了基本的关键词搜索,还支持布尔逻辑、短语匹配、模糊搜索、近似搜索等多种高级查询语法。 3. **...

    Lucene---全文检索(文档pdf/txt/office/html)

    - **索引(Index)**: Lucene 首先对文档内容进行分析和处理,生成倒排索引(Inverted Index),这是一种将单词映射到包含该单词的文档集合的数据结构,便于快速查找包含特定单词的文档。 - **分词器(Tokenizer)...

    lucene索引非txt文档笔记

    总的来说,要让 Lucene 支持非文本格式的文档搜索,关键在于使用适当的库将这些文档转换为纯文本,然后利用 Lucene 的 API 进行索引。通过这种方式,你可以实现对 Word、PDF、RTF、HTML 和 XML 文件的有效搜索。

    lucene全文检索word2007

    3. **文档(Document)**:在Lucene中,每个要索引的对象被表示为一个文档,包含多个字段(Field),比如Word文档的标题、内容、作者等。 4. **字段(Field)**:字段是文档的组成部分,每个字段有其特定的属性,...

    最新版windows lucene-8.9.0.zip

    5. **文档处理**:新版本可能增强了对不同文档格式的支持,如PDF、Word、HTML等,使得非文本数据的全文检索成为可能。 6. **API改进**:Lucene的API通常会随着版本迭代而变得更为友好和完善,8.9.0可能会提供更简洁...

    lucene 结合 poi 索引word

    当我们需要索引Word文档时,首先需要使用POI来读取文档内容。POI提供了HWPFOIDocument和XWPFDocument类,分别用于处理旧版的二进制Word格式(.doc)和较新的XML格式(.docx)。通过这些类,我们可以获取到文档中的...

    Lucene-common-functions-introduced_v1

    2. **索引构建(Indexing)**:索引是Lucene的核心,它创建了一个倒排索引(Inverted Index),其中每个术语都关联到包含该术语的文档列表。索引过程中,可以设置不同的字段类型,如存储字段(Stored Field,用于...

    lucene-2.4.1搜索框架

    Lucene的工作基于倒排索引(Inverted Index)原理,通过分析文本并创建索引,使得在海量数据中快速定位到包含特定关键词的文档变得可能。这个过程包括分词(Tokenization)、词干提取(Stemming)、停用词处理(Stop...

    Lucene的原理完整版pdf

    7. **倒排索引**:Lucene的核心是倒排索引,它允许快速定位含有特定术语的文档,极大提高了搜索效率。 ### 四、应用示例 例如,假设你正在构建一个博客平台,可以使用Lucene来实现全文检索功能。每个博客文章作为...

    lucene.jar架包

    2. **灵活性**:Lucene 支持多种文件格式,如纯文本、HTML、PDF、Word 文档等,并能处理多种语言。 3. **可扩展性**:Lucene 提供了丰富的 API,允许开发者根据需求自定义索引和查询策略。 4. **跨平台**:由于是用 ...

    lucene索引结构原理.docx

    而在Lucene中,基本单位是Document,它同样由多个字段组成,但Lucene索引的是这些字段的内容,以加速文本检索。 - **索引构建**:Lucene支持增量索引和批量索引,可以处理数据源的小幅变化或大规模数据。数据库通常...

    lucene-demo:Lucene演示

    6. **实时更新与增量索引**:Lucene支持实时更新和增量索引,这意味着新的文档可以在不重新构建整个索引的情况下被添加。这对于处理动态变化的数据源非常有用。 通过深入研究“lucene-demo”项目,开发者不仅可以...

    lucene-入门

    Lucene 能够对非结构化数据进行索引和搜索,而非结构化数据是指不定长或无固定格式的数据,例如邮件、Word 文档等。全文检索的思路包括提取非结构化数据的信息、重新组织这些信息并变成一定的结构——索引,以提高...

    Lucene对office的word, Excel操作 - 杨鑫newlife的专栏 - CSDN博客1

    一旦Word文档被转换为文本格式,我们就可以使用Lucene索引这个文本,从而实现对Word文档的全文搜索功能。这包括创建Analyzer,构建IndexWriter,将文本内容添加到索引,然后使用QueryParser生成查询,最后使用...

Global site tag (gtag.js) - Google Analytics