package bindex;
import java.io.File;
import tool.FileText;
import java.io.IOException;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.index.CorruptIndexException;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.store.LockObtainFailedException;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
public class FileIndexer {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String indexPath ="indexes";
try {
IndexWriter indexWriter = new IndexWriter(indexPath,new StandardAnalyzer());
Document doc=new Document();
//第一个文档
File f=new File("htmls/hao123.htm");
String name=f.getName();
Field field=new Field("name",name,Field.Store.YES,Field.Index.TOKENIZED);
doc.add(field);
String content=FileText.getText(f);
field=new Field("conent",content,Field.Store.YES,Field.Index.TOKENIZED);
doc.add(field);
String path=f.getPath();
field=new Field("path",path,Field.Store.YES,Field.Index.NO);
doc.add(field);
indexWriter.addDocument(doc);
//第二个文档
f=new File("htmls/home.htm");
name=f.getName();
field=new Field("name",name,Field.Store.YES,Field.Index.TOKENIZED);
doc.add(field);
content=FileText.getText(f);
field=new Field("conent",content,Field.Store.YES,Field.Index.TOKENIZED);
doc.add(field);
path=f.getPath();
field=new Field("path",path,Field.Store.YES,Field.Index.NO);
doc.add(field);
indexWriter.addDocument(doc);
indexWriter.close();
System.out.println("OK!");
} catch (CorruptIndexException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (LockObtainFailedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package tool;
import java.io.*;
public class FileText {
/**
* @param args
*/
public static String getText(File f){
StringBuffer sb=new StringBuffer("");
try{
FileReader fr=new FileReader(f);
BufferedReader br=new BufferedReader(fr);
String s=br.readLine();
while(s!=null){
sb.append(s);
s=br.readLine();
}
br.close();
}
catch (Exception e){
sb.append("");
}
return sb.toString();
}
public static String getText(String s){
String t="";
try{
File f=new File(s);
t=getText(f);
}
catch (Exception e){
t="";
}
return t;
}
}
分享到:
相关推荐
在提供的"lucene5.2.1入门经典案例"中,你可以找到如何创建索引、执行查询、高亮显示结果等具体操作的示例代码。这些案例可以帮助初学者快速理解和应用Lucene-5.2.1的核心功能。通过实践,你可以更深入地了解Lucene...
这个“Lucene入门demo”将帮助我们理解如何使用 Lucene 进行基本的索引和搜索操作。 **一、Lucene 的核心概念** 1. **索引(Indexing)**: 在 Lucene 中,索引是文档内容的预处理结果,类似于数据库中的索引。通过...
这个“lucene-project.zip”文件包含了学习Lucene全文检索程序的相关资源,是针对初学者的一个入门教程。 **Lucene的核心概念** 1. **文档(Document)**:在Lucene中,文档是信息的基本单位,可以看作是数据库中...
**Lucene 3.6 入门案例** Lucene 是一个高性能、全文本搜索库,由 Apache 软件基金会开发。它提供了完整的搜索功能,包括索引、查询、评分等,广泛应用于各种项目和产品中。在这个入门案例中,我们将深入理解如何...
**标题:“Lucene-入门”** Lucene是一个高性能、全文本搜索库,由Apache软件基金会开发并维护。它是Java编写的一个开源项目,被广泛应用于构建搜索引擎或者在大型数据集上进行全文检索。Lucene提供了丰富的搜索...
入门Lucene时,可以创建一个简单的HelloWorld程序,使用Lucene提供的API如IndexWriter进行索引的创建和维护,以及IndexSearcher进行索引的搜索。在Java环境中,需要引入相关的Lucene库,如lucene-analyzers-common、...
lucene入门实战.txt Lucene 的学习 .txt Lucene-2.0学习文档 .txt Lucene入门与使用 .txt lucene性能.txt 大富翁全文索引和查询的例子程序.txt 关于lucene2.0的创建、检索和删除功能的完整实现.doc web...
`lucene入门小实例.txt` 文件中可能包含了一个简单的Lucene使用示例,例如: 1. 创建 `Directory` 对象,比如使用 `FSDirectory.open()` 打开一个文件系统的目录来存储索引。 2. 实例化 `Analyzer`,如使用 `...
**Lucene5学习之创建索引入门示例** 在IT领域,搜索引擎的开发与优化是一项关键技术,而Apache Lucene作为一款高性能、全文本搜索库,是许多开发者进行文本检索的首选工具。本文将深入探讨如何使用Lucene5来创建一...
在“lucene入门小例子”中,可能包含创建索引、添加文档、查询和显示结果等基本操作的示例代码。这些代码将帮助你了解如何在实际项目中集成和使用Lucene,进一步熟悉全文检索的原理和实践。 在学习过程中,你可能会...
### Lucene快速入门知识点 #### 1. Lucene简介 ##### 1.1 Lucene的历史 - **创始人**: Lucene由一位资深的全文索引/检索专家开发。 - **开源历程**: 最初发布在其个人主页上,2001年10月捐赠给Apache基金会,成为...
**Lucene入门学习文档** **一、什么是Lucene** Lucene是Apache软件基金会下的一个开源全文检索库,它提供了一个高性能、可扩展的信息检索服务。Lucene最初由Doug Cutting开发,现在已经成为Java社区中事实上的标准...
以上是Lucene入门的基本知识和关键概念,通过深入学习和实践,你可以掌握如何利用Lucene构建强大的全文搜索引擎。记住,实践中遇到的问题往往是最好的学习资源,不断尝试和解决,你将逐渐成为Lucene的专家。
【Lucene】Lucene入门心得 Lucene是一个高性能、全文本搜索库,由Apache软件基金会开发,被广泛应用于各种搜索引擎的构建。它提供了一个简单的API,使得开发者可以方便地在自己的应用程序中集成全文检索功能。...
### Lucene 入门基础教程知识点详解 #### 一、Lucene简介 - **定义**:Lucene是一款高性能、全功能的文本搜索引擎库,由Java编写而成,属于Apache项目的一部分。 - **适用场景**:适合于任何需要进行全文检索的应用...
### Lucene 入门 #### 概述 Lucene 是一个高效的、基于 Java 的全文检索库。它被设计用来支持全文检索,并且在许多情况下已经得到了广泛的应用,例如在 Windows 系统中查找文件、Eclipse 中查找帮助文档、BBS 或 ...