lucene3.5删除索引实例
lucene提供了两种删除索引的方式,一种是通过documentId删除某document文档,第二种是根据Term删除文档document.
对于第一种方式,在实际开发中使用很少,因为对于已经创建好的索引来说,我们很难确定某文档document的文档编号documentId是什么。
对于第二种方式,具体实例列举如下。
//按term删除文档
public class MyDeleteIndexes {public static final String STORE_PATH = "E:/lucene_index";public static void deleteIndexes(String field , String keyword) throws IOException{long startTime = System.currentTimeMillis();Directory dir = FSDirectory.open(new File(STORE_PATH));IndexReader reader = IndexReader.open(dir,false);Term term = new Term(field,keyword);reader.deleteDocuments(term);//可以按documentId删除文档//reader.deleteDocument(1);reader.flush();reader.close();//System.out.println(reader.lastModified(dir));long endTime = System.currentTimeMillis();System.out.println("total time: " + (endTime - startTime) + " ms");}}2 楼 wanglihu 2012-01-04 你也好啊! 3 楼 zhuchao_ko 2012-02-29 good.