zoukankan      html  css  js  c++  java
  • lucene建立索引时候的用到的一些文档和目录操作

    在前边的文章中多是用的添加一个document,这里介绍一下其它的文档操作
    1,按照编号删除
    public void deleteDoc(String indexDir) throws Exception{
            IndexReader reader 
    = IndexReader.open(indexDir);
            reader.delete(
    1);
            reader.close();
        }
    2,根据term来删除
    public void deleteDocWithTerm(String indexDir) throws Exception{
            IndexReader reader 
    = IndexReader.open(indexDir);
            reader.delete(
    new Term("city","beijing"));
            reader.close();
        }
      3,取消删除
    public void undeleteDoc(String indexDir) throws Exception{
            IndexReader reader 
    = IndexReader.open(indexDir);
            reader.delete(
    1);
            reader.undeleteAll();
            reader.close();
        }
    4,删除后优化
    public void mergeDoc(String indexDir) throws Exception{
            IndexReader reader 
    = IndexReader.open(indexDir);
            reader.delete(
    new Term("city","beijing"));
            reader.close();
            
            IndexWriter writer 
    = new IndexWriter(indexDir,new StandardAnalyzer(),true);
            writer.optimize();
            writer.close();
        }

    5,把RAMDirectory中的索引合并到FSDirectroy中
    public void indexOperator(String indexDir) throws Exception{
            FSDirectory fsDir 
    = FSDirectory.getDirectory(indexDir,true);
            RAMDirectory ramDir 
    = new RAMDirectory();
            IndexWriter fsWriter 
    = new  IndexWriter(fsDir,new SimpleAnalyzer(),true);
            IndexWriter ramWriter 
    = new IndexWriter(ramDir,new SimpleAnalyzer(),true);
            
    //..ramWriter add doc
            fsWriter.addIndexes(new Directory[]{ramDir});
            ramWriter.close();
            
        }
    6,把索引的内容直接读入内存
    RAMDirectory ramDir = new RAMDirectory(indexDir);
  • 相关阅读:
    Python踩坑总结
    you-get下载酷我音乐付费歌曲
    Windows下python2和python3共存时pip失效(pip找不到)的解决办法
    正负混合排序,正数在前,负数在后
    用Python做窗口化滚动点名系统
    sublime3自定义快捷键运行python,支持input()函数
    python中字典,没键加键,有键操作其键对应的值,的思想
    python可变容器类型做函数参数的坑
    Ascii码 unicode码 utf-8编码 gbk编码的区别
    python文件操作各种模式和常用方法总结r r+ rb r+b
  • 原文地址:https://www.cnblogs.com/pony/p/1486281.html
Copyright © 2011-2022 走看看