2016-07-27 25 views

回答

0

是的,你可以做到這一點。我不是C#程序員,但希望你能理解Java代碼。

 IndexReader reader = DirectoryReader.open(dir); 

     final int len = reader.maxDoc(); 
     for (int i = 0; i < len; ++i) { 
      Document document = reader.document(i); 
      List<IndexableField> fields = document.getFields(); 
      for (IndexableField field : fields) { 
       if (field.fieldType().stored()) { 
        System.out.println(field.stringValue()); 
       } 
      } 
     } 

所以,基本上,我遍歷所有文檔,獲取所有字段,如果它們被存儲,獲取數據。你可以通過字段的名稱來過濾它,這是你需要的。

完整的測試可以在這裏找到 - https://raw.githubusercontent.com/MysterionRise/information-retrieval-adventure/master/src/main/java/org/mystic/GetAllStoredFieldValues.java(也有證明,它工作正常)

相關問題