判断索引目录的segments文件是否存在,
如果存在,用增量索引
否则, 重新创建索引
如果是重新创建索引
只需要遍历需要索引的内容,然后新增文档
如果是增量索引
判断主Key[文件名(包含全路径)]在索引中是否存在
如果存在
判断[文件的修改时间],是否和索引中保存的[修改时间]一致
如果不一致
删除旧的索引中的该索引项目
新增对该文档的索引
否则
新增该文档的索引
缺点,不能发现已经删除的文件,当然是认为的去某个目录删除该文件。
如果是程序的话当然是可以的,只需要把索引中的项目删除。
CodeProject上面的http://www.codeproject.com/csharp/DesktopSearch1.asp
使用微软的IndexService,需要win2000或者win2000以上的版本。
缺点,好像这些函数在处理 修改word一点点内容之后,算法会有一些问题,如果重新编制索引,又不会出现:( 不知道是不是我做错了。