using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Lucene.Net.Analysis;
using Lucene.Net.Documents;
using Lucene.Net.Index;
using Lucene.Net.QueryParsers;
using Lucene.Net.Util;
using Lucene.Net.Search;
using Lucene.Net.Store;
using Lucene.Net.Analysis.Standard;
namespace ConsoleLucene
{
class Program
{
static void Main(string[] args)
{
//创建一个分析器
Analyzer analyzer = new StandardAnalyzer();
//创建一个索引的硬盘
Directory directory = new RAMDirectory ();
//将索引写入目录硬盘
IndexWriter iwriter = new IndexWriter(directory,analyzer,true );
iwriter.SetMaxFieldLength (25000);
Document doc = new Document();
string text = "this is the text to be indexed.";
doc.Add(new Field("fieldname",text,Field.Store.YES,Field.Index.TOKENIZED ));
iwriter.AddDocument(doc);
iwriter.Close();
//查询索引
IndexSearcher isearcher = new IndexSearcher(directory);
//解析查询
Query query = QueryParser.Parse("text", "fieldname", analyzer);
Hits hits = isearcher.Search(query);
for (int i = 0; i < hits.Length(); i++) {
Document hitDoc = hits.Doc(i);
Console.WriteLine(hitDoc.GetField("fieldname").ToString());
}
isearcher.Close();
directory.Close();
Console.ReadLine();
}
}
}