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

📄 sampler.cs

📁 用C#编写的一个款搜索engine的源代码!摘自<Visual c#2005 程序设计>
💻 CS
字号:
using System;
using System.IO;

namespace SECompare.Kernel
{
	/// <summary>
	/// Class Sampler is used to do query sampling.
	/// Sampler selects typical queries from sample query files, 
    /// and only the selected queries will be crawled by crawler.
	/// </summary>
	public class Sampler
	{

		/// <summary>
		/// Generate a list of queries to crawl, 
        /// by percentage sampling method from given query sample list.
		/// </summary>
		/// <param name="Percentage">a float between 0 and 1, else do no pruning.</param>
		public static void Run(float Percentage)
		{
			//For each sample files, do sampling
			String[] files = Directory.GetFiles((new Config.Config()).SampleRoot);
			for(int i=0;i<files.Length;i++)
			{
				FileInfo file = new FileInfo(files[i]);
				String[] splits = file.Name.Split(new char[]{'.'});
				String category = splits[0];
				
				//read query samples
				CrawlSample sample = new CrawlSample();
				sample.Load(category,files[i]);
				//delete some samples
				sample.Prune(Percentage);
				//Save samplinged query list
				sample.Save((new Config.Config()).SamplingedQueryRoot+"\\"+category);
			}
		}

		/// <summary>
		/// Generate a list of queries to crawl, 
        /// by percentage sampling method from given query sample list.
		/// </summary>
		/// <param name="sampleSize">an integer, 
        /// which represent the sample size after pruning.
        /// If it is larger than original size, do nothing.</param>
		public static void Run(int sampleSize)
		{
			//For each sample files, do sampling
			String[] files = Directory.GetFiles((new Config.Config()).SampleRoot);
			for(int i=0;i<files.Length;i++)
			{
				FileInfo file = new FileInfo(files[i]);
				String[] splits = file.Name.Split(new char[]{'.'});
				String category = splits[0];
				
				//read query samples
				CrawlSample sample = new CrawlSample();
				sample.Load(category,files[i]);
				//delete some samples
				sample.Prune(sampleSize);
				//Save samplinged query list
				sample.Save((new Config.Config()).SamplingedQueryRoot+"\\"+category);
			}
		}
	}
}

⌨️ 快捷键说明

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