Zend_Search_Lucene-JavaLucene.xml 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. <sect1 id="zend.search.lucene.java-lucene">
  2. <title>Взаимодействие с Java Lucene<!--Interoperating with Java Lucene--></title>
  3. <sect2 id="zend.search.lucene.index-creation.file-formats">
  4. <title>Форматы файлов<!--File Formats--></title>
  5. <para>
  6. Форматы файлов индекса Zend_Search_Lucene являются совместимыми с Lucene
  7. версии 1.4 и выше.
  8. <!--
  9. Zend_Search_Lucene index file formats are binary compatible with a Lucene
  10. version 1.4 and above.
  11. -->
  12. </para>
  13. <para>
  14. Подробное описание этого формата можно прочитать здесь:
  15. <!--
  16. A detailed description of this format is available here:
  17. -->
  18. <ulink url="http://lucene.apache.org/java/docs/fileformats.html"/>.
  19. </para>
  20. </sect2>
  21. <sect2 id="zend.search.lucene.index-creation.index-directory">
  22. <title>Директория для индекса<!--Index Directory--></title>
  23. <para>
  24. После создания индекса директория для индекса будет содержать несколько файлов:
  25. <!--
  26. After index creation, the index directory will contain several files:
  27. -->
  28. </para>
  29. <itemizedlist>
  30. <listitem>
  31. <para>
  32. файл <filename>segments</filename> является списком сегментов индекса.
  33. <!--
  34. <filename>segments</filename> file is a list of index segments.
  35. -->
  36. </para>
  37. </listitem>
  38. <listitem>
  39. <para>
  40. файлы <filename>*.cfs</filename> содержат сегменты индекса.
  41. Внимание! Оптимизированный индекс всегда имеет только один сегмент.
  42. <!--
  43. <filename>*.cfs</filename> files contain index segments.
  44. Note! Optimized index has always only one segment.
  45. -->
  46. </para>
  47. </listitem>
  48. <listitem>
  49. <para>
  50. файл <filename>deletable</filename> является списком файлов,
  51. которые больше не используются индексом, но которые нельзя было удалить.
  52. <!--
  53. <filename>deletable</filename> file is a list of files that are no longer used
  54. by the index, but which could not be deleted.
  55. -->
  56. </para>
  57. </listitem>
  58. </itemizedlist>
  59. </sect2>
  60. <sect2 id="zend.search.lucene.java-lucene.source-code">
  61. <title>Исходный код Java<!--Java Source Code--></title>
  62. <para>
  63. Приведенный ниже листинг программы на Java представляет собой пример
  64. того, как индексировать файл, используя Java Lucene:
  65. <!--
  66. The Java program listing below provides an example of how to index a file
  67. using Java Lucene:
  68. -->
  69. </para>
  70. <programlisting language="java"><![CDATA[
  71. /**
  72. * Создание индекса:
  73. */
  74. import org.apache.lucene.index.IndexWriter;
  75. import org.apache.lucene.document.*;
  76. import java.io.*
  77. ...
  78. IndexWriter indexWriter = new IndexWriter("/data/my_index",
  79. new SimpleAnalyzer(), true);
  80. ...
  81. String filename = "/path/to/file-to-index.txt"
  82. File f = new File(filename);
  83. Document doc = new Document();
  84. doc.add(Field.Text("path", filename));
  85. doc.add(Field.Keyword("modified",DateField.timeToString(f.lastModified())));
  86. doc.add(Field.Text("author", "unknown"));
  87. FileInputStream is = new FileInputStream(f);
  88. Reader reader = new BufferedReader(new InputStreamReader(is));
  89. doc.add(Field.Text("contents", reader));
  90. indexWriter.addDocument(doc);]]>
  91. </programlisting>
  92. </sect2>
  93. </sect1>
  94. <!--
  95. vim:se ts=4 sw=4 et:
  96. -->