繁体   English   中英

如何在Lucene文档中存储数值?

[英]How to STORE numeric values in lucene documents?

我正在用Java编写代码,并使用lucene 3.4索引文本文档。 每个文档都有一个id和一些其他数值以及内容和标题。

我根据以下代码将每个文档添加到索引:

Document doc = new Document();
doc.add(new NumericField("id").setIntValue(writer.numDocs()));
doc.add(new NumericField("year").setIntValue(1988));
doc.add(new Field("content", new FileReader(file)));
writer.addDocument(doc);
writer.close();

但是,当我搜索并想要获取结果时,这些字段将返回null。 我知道每当我添加一个字段并设置Field.Store.NO时,它都将返回null ,但是为什么它现在会发生呢? 我应该怎么做才能获得这些领域的价值?

doc.get("id");     //why it returns null? what should I do?

默认情况下,不存储数字字段。

使用NumericField(String,Field.Store,boolean)构造函数可以指定要存储的内容,以备日后检索。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM