⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fieldlengthtest.cs

📁 DotLucentet,用来做撬
💻 CS
字号:
using System;
using Lucene.Net.Analysis;
using Lucene.Net.Documents;
using Lucene.Net.Index;
using Lucene.Net.Search;
using Lucene.Net.Store;
using NUnit.Framework;

[TestFixture]
public class FieldLengthTest
{
	private Directory dir;

	private String[] keywords = {"1", "2"};

	private String[] unindexed = {"Netherlands", "Italy"};

	private String[] unstored = {
		"Amsterdam has lots of bridges",
		"Venice has lots of canals"
	};

	private String[] text = {"Amsterdam", "Venice"};

	[SetUp]
	protected void Init()
	{
		dir = FSDirectory.GetDirectory("index", true);
	}

	[Test]
	public void FieldSize()
	{
		AddDocuments(dir, 10);
		Assert.AreEqual(1, GetHitCount("contents", "bridges"));
		AddDocuments(dir, 1);
		Assert.AreEqual(0, GetHitCount("contents", "bridges"));
	}

	private int GetHitCount(String fieldName, String searchString)
	{
		IndexSearcher searcher = new IndexSearcher(dir);
		Term t = new Term(fieldName, searchString);
		Query query = new TermQuery(t);
		Hits hits = searcher.Search(query);
		int hitCount = hits.Length();
		searcher.Close();
		return hitCount;
	}

	private void AddDocuments(Directory dir, int maxFieldLength)
	{
		IndexWriter writer = new IndexWriter(dir, new SimpleAnalyzer(), true);
		writer.maxFieldLength = maxFieldLength;
		;
		for (int i = 0; i < keywords.Length; i++)
		{
			Document doc = new Document();
			doc.Add(Field.Keyword("id", keywords[i]));
			doc.Add(Field.UnIndexed("country", unindexed[i]));
			doc.Add(Field.UnStored("contents", unstored[i]));
			doc.Add(Field.Text("city", text[i]));
			writer.AddDocument(doc);
		}
		writer.Optimize();
		writer.Close();
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -