【发布时间】:2011-04-21 17:04:32
【问题描述】:
对于任何文档,termFreqVector 始终为空。 我确定文档在集合中并且该字段存在。那么问题出在哪里?
for (int i = 0; i TermFreqVector tfv = reader.getTermFreqVector(i, "tags");
谢谢
【问题讨论】:
对于任何文档,termFreqVector 始终为空。 我确定文档在集合中并且该字段存在。那么问题出在哪里?
for (int i = 0; i TermFreqVector tfv = reader.getTermFreqVector(i, "tags");
谢谢
【问题讨论】:
您确定要使用 Field.TermVector.YES 为您的字段编制索引吗?这是一个工作示例:
Directory directory = new RAMDirectory();
Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_30);
MaxFieldLength mlf = MaxFieldLength.UNLIMITED;
IndexWriter writer = new IndexWriter(directory, analyzer, true, mlf);
Document doc = new Document();
doc.add(new Field("tags", "foo bar", Field.Store.NO,
Field.Index.ANALYZED, Field.TermVector.YES));
writer.addDocument(doc);
writer.close();
IndexReader reader = IndexReader.open(directory);
for (int i = 0; i < reader.numDocs(); i++) {
TermFreqVector tfv = reader.getTermFreqVector(i, "tags");
System.out.println(tfv);
}
【讨论】: