Programmer's Reference Guide

РасширяемостьExtensibility

Взаимодействие с Java Lucene

Форматы файлов

Форматы файлов индекса Zend_Search_Lucene являются совместимыми с Lucene версии 1.4 и выше.

Подробное описание этого формата можно прочитать здесь: http://lucene.apache.org/java/docs/fileformats.html.

Директория для индекса

После создания индекса директория для индекса будет содержать несколько файлов:

  • файл segments является списком сегментов индекса.

  • файлы *.cfs содержат сегменты индекса. Внимание! Оптимизированный индекс всегда имеет только один сегмент.

  • файл deletable является списком файлов, которые больше не используются индексом, но которые нельзя было удалить.

Исходный код Java

Приведенный ниже листинг программы на Java представляет собой пример того, как индексировать файл, используя Java Lucene:

/**
* Создание индекса:
*/
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.document.*;

import java.io.*

...

IndexWriter indexWriter = new IndexWriter("/data/my_index",
                                          new SimpleAnalyzer(), true);

...

String filename = "/path/to/file-to-index.txt"
File f = new File(filename);

Document doc = new Document();
doc.add(Field.Text("path", filename));
doc.add(Field.Keyword("modified",DateField.timeToString(f.lastModified())));
doc.add(Field.Text("author", "unknown"));
FileInputStream is = new FileInputStream(f);
Reader reader = new BufferedReader(new InputStreamReader(is));
doc.add(Field.Text("contents", reader));

indexWriter.addDocument(doc);
        

РасширяемостьExtensibility
blog comments powered by Disqus

Select a Version

Languages Available

Components

Search the Manual