本文整理汇总了C#中Lucene.Net.Index.IndexReader.GetTermFreqVector方法的典型用法代码示例。如果您正苦于以下问题:C# IndexReader.GetTermFreqVector方法的具体用法?C# IndexReader.GetTermFreqVector怎么用?C# IndexReader.GetTermFreqVector使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Lucene.Net.Index.IndexReader
的用法示例。
在下文中一共展示了IndexReader.GetTermFreqVector方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetAnyTokenStream
/// <summary>
/// A convenience method that tries a number of approaches to getting a token stream.
/// The cost of finding there are no termVectors in the index is minimal (1000 invocations still
/// registers 0 ms). So this "lazy" (flexible?) approach to coding is probably acceptable
/// </summary>
/// <returns>null if field not stored correctly</returns>
public static TokenStream GetAnyTokenStream(IndexReader reader, int docId, String field, Analyzer analyzer)
{
TokenStream ts = null;
var tfv = reader.GetTermFreqVector(docId, field);
if (tfv != null)
{
var termPositionVector = tfv as TermPositionVector;
if (termPositionVector != null)
{
ts = GetTokenStream(termPositionVector);
}
}
//No token info stored so fall back to analyzing raw content
return ts ?? GetTokenStream(reader, docId, field, analyzer);
}
示例2: GetTokenStream
public static TokenStream GetTokenStream(IndexReader reader, int docId, System.String field)
{
var tfv = reader.GetTermFreqVector(docId, field);
if (tfv == null)
{
throw new ArgumentException(field + " in doc #" + docId
+ "does not have any term position data stored");
}
if (tfv is TermPositionVector)
{
var tpv = (TermPositionVector) reader.GetTermFreqVector(docId, field);
return GetTokenStream(tpv);
}
throw new ArgumentException(field + " in doc #" + docId
+ "does not have any term position data stored");
}