2010-06-05 87 views
1

我試圖找出正確的方式來閱讀lucene索引只有一次運行應用程序多次,我怎麼能在java中做到這一點?閱讀索引的建議

因爲索引數據不會改變,所以每次讀取它們都不是必需的。有人能解釋一下它的邏輯嗎?謝謝

UPDATE:

public List initTableObject() throws IOException { 
     Directory fSDirectory = FSDirectory.open(new File(INDEX_NAME)); 
     List<String>termList = new ArrayList<String>(); 

     RAMDirectory directory = new RAMDirectory(fSDirectory); 

     IndexReader iReader = IndexReader.open(fSDirectory); 
     FilterIndexReader fReader = new FilterIndexReader(iReader); 



    // int numOfDocs = fReader.numDocs(); 
     TermEnum terms = fReader.terms(); 


     while (terms.next()){ 
      Term term = terms.term(); 
      String termText = term.text(); 
      termList.add(termText); 
      } 
      iReader.close(); 
      return termList; 
    } 

我與Lucene和這個真正的新,所以這裏是我的本錢到目前爲止我只是現在還沒有與RAMDirectory。

此方法檢索列表,因爲我需要此索引列表與我有的一些文件進行比較。如何將這個列表存儲到RAM中,以便我可以在我的其他應用程序中使用它進行比較?

回答

1

我認爲this question的答案可能有用。

+0

gr8我會馬上進入+1 tnx – London 2010-06-05 18:04:26

+0

我更新了我的問題,任何幫助表示讚賞 – London 2010-06-05 18:32:34