gpt4 book ai didi

java - 既然 Lucene 4.1 中不存在 TermEnum,那么如何从 IndexReader 获取字段呢?

转载 作者:太空宇宙 更新时间:2023-11-04 07:48:03 27 4
gpt4 key购买 nike

Lucene 4.1 中的 3.6 代码相当于什么:

IndexReader ir = IndexReader.open(dir);
TermEnum termEnum = ir.terms(t);

这在我的许多测试用例中都有使用

我检查了迁移指南,上面写着

TermEnum termsEnum = ...;
while(termsEnum.next()) {
Term t = termsEnum.term();
System.out.println("field=" + t.field() + "; text=" + t.text());
}

Do this:

for(String field : fields) {
Terms terms = fields.terms(field);
TermsEnum termsEnum = terms.iterator(null);
BytesRef text;
while((text = termsEnum.next()) != null) {
System.out.println("field=" + field + "; text=" + text.utf8ToString());
}
}

但是字段从哪里来,我如何从 IndexReader 中获取字段

最佳答案

使用

MultiFields.getFields(ir)

相反

关于java - 既然 Lucene 4.1 中不存在 TermEnum,那么如何从 IndexReader 获取字段呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14960222/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com