我正在使用Lucene.NET
在VB 9中开发桌面搜索引擎我希望删除并为更新的文件创建新条目。
索引存储完整的文件路径和上次修改日期。
doc.Add(New Field("path", filepath, Field.Store.YES, Field.Index.UN_TOKENIZED))
doc.Add(New Field("modified", New FileInfo(filepath).LastWriteTime, Field.Store.YES, Field.Index.UN_TOKENIZED))
.
.
我正在使用IndexReader来检查索引中是否存在文件(以避免重新索引相同的文件)。
Dim reader As IndexReader = IndexReader.Open(SearchForm.IndexFolderTextBox.Text)
If reader.DocFreq(New Term("path", filepath)) = 0 Then
addFile(filepath)
End If
reader.Close()
我有以下疑问:
如何使用modified
字段中的值来检查特定文件的索引条目是否旧? IndexReader的哪些功能可以让我这样做?
如何获取函数deleteDocument()的文档编号(docNum)
答案 0 :(得分:1)
要回答第二个问题,请使用以下IndexReader方法:
public int deleteDocuments(Term term)
因此您不需要文件编号。