資源簡介
文件搜索器多線程的搜索器文件搜索器多線程的搜索器文件搜索器多線程的搜索器文件搜索器多線程的搜索器文件搜索器多線程的搜索器文件搜索器多線程的搜索器文件搜索器多線程的搜索器原創

代碼片段和文件信息
using?System;
using?System.IO;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Linq;
using?System.Text;
using?System.Windows.Forms;
using?System.Threading;
namespace?FileFinder
{
????public?partial?class?myForm?:?Form
????{
????????public?const?int?TotalNum?=?10;
????????//線程類數組
????????public?SearchThread[]?st?=?new?SearchThread[TotalNum];
????????public?static?bool?Initial_flag;
????????int?filecount;//記錄搜索到文件的個數;
????????public?myForm()
????????{
????????????InitializeComponent();
????????????for?(int?i?=?0;?i?????????????{
????????????????st[i]?=?new?SearchThread(this?new?SearchFileEventHandler(handleThreadEvent));
????????????}
????????????Initial_flag?=?false;
????????????filecount?=?0;
????????????this.TextBox_FileName.Tag?=?false;
????????????//處理填入為空白的事件
????????????this.TextBox_FileName.Validating?+=?new?System.ComponentModel.CancelEventHandler(this.TextBox_Empty_Validating);
????????????string[]?strDrives?=?getDrives();
????????????AddComboBoxItem(strDrives);
????????}
????????//事件處理函數
????????void?handleThreadEvent(SearchThread?sender?FileFinderEventArgs?args)
????????{
????????????ProcessEvent(m_lblC?args);
????????}
????????//處理ThreadSearch對象傳回來的事件對象
????????void?ProcessEvent(Label?lbl?FileFinderEventArgs?args)
????????{
????????????switch?(args.EventType)
????????????{
????????????????case?EventTypes.Start:
????????????????????lbl.Text?=?“查找線程啟動...“;
????????????????????break;
????????????????case?EventTypes.Process:
????????????????????lbl.Text?=?“當前位置:“?+?args.FilePath;
????????????????????break;
????????????????case?EventTypes.Terminate:
????????????????????lbl.Text?=?“查找線程停止.“;
????????????????????break;???
????????????????case?EventTypes.Match:
????????????????????lbl.Text?=?“搜索到文件:“?+?args.FilePath;
????????????????????filecount?=?filecount?+?1;
????????????????????this.additemtolistview(args.FilePath);
????????????????????break;
???????????????
????????????}
????????}
????????//添加結果
????????private?void?additemtolistview(string?filepath)
????????{
????????????m_lbCount.Text?=?“?共搜索到“?+?this.filecount.ToString()?+?“條記錄“;
????????????FileInfo?fi?=?new?FileInfo(filepath);
????????????listResult.Items.Add(fi.Name);
????????????listResult.Items[listResult.Items.Count?-?1].SubItems.Add(fi.Length.ToString());
????????????listResult.Items[listResult.Items.Count?-?1].SubItems.Add(fi.CreationTime.ToString());
????????????listResult.Items[listResult.Items.Count?-?1].SubItems.Add(fi.LastWriteTime.ToString());
????????????listResult.Items[listResult.Items.Count?-?1].SubItems.Add(fi.FullName);
????????}
????????//按start
????????private?void?Btn_Start_Click(object?sender?EventArgs?e)
????????{
????????????string?sPattern;
????????????string?strPath;
????????????sPattern?=?““;
????????????filecount?=?0;
????????????this.listResult.Items.Clear();
???????????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????16384??2009-10-30?08:53??FileFinder\FileFinder\bin\Debug\FileFinder.exe
?????文件??????38400??2009-10-30?08:53??FileFinder\FileFinder\bin\Debug\FileFinder.pdb
?????文件??????14328??2009-10-30?08:54??FileFinder\FileFinder\bin\Debug\FileFinder.vshost.exe
?????文件????????490??2007-07-21?02:33??FileFinder\FileFinder\bin\Debug\FileFinder.vshost.exe.manifest
?????文件??????15872??2009-10-28?18:52??FileFinder\FileFinder\bin\Release\FileFinder.exe
?????文件??????30208??2009-10-28?18:52??FileFinder\FileFinder\bin\Release\FileFinder.pdb
?????文件??????14328??2009-10-28?18:53??FileFinder\FileFinder\bin\Release\FileFinder.vshost.exe
?????文件????????490??2007-07-21?02:33??FileFinder\FileFinder\bin\Release\FileFinder.vshost.exe.manifest
?????文件???????3814??2009-10-21?20:23??FileFinder\FileFinder\FileFinder.csproj
?????文件???????5252??2009-10-29?19:39??FileFinder\FileFinder\myForm.cs
?????文件???????9302??2009-10-29?19:40??FileFinder\FileFinder\myForm.Designer.cs
?????文件???????5814??2009-10-28?23:50??FileFinder\FileFinder\myForm.resx
?????文件????????658??2009-10-30?08:54??FileFinder\FileFinder\obj\Debug\FileFinder.csproj.FileListAbsolute.txt
?????文件????????906??2009-10-28?23:50??FileFinder\FileFinder\obj\Debug\FileFinder.csproj.GenerateResource.Cache
?????文件??????16384??2009-10-30?08:53??FileFinder\FileFinder\obj\Debug\FileFinder.exe
?????文件????????180??2009-10-28?23:50??FileFinder\FileFinder\obj\Debug\FileFinder.myForm.resources
?????文件??????38400??2009-10-30?08:53??FileFinder\FileFinder\obj\Debug\FileFinder.pdb
?????文件????????180??2009-10-21?20:23??FileFinder\FileFinder\obj\Debug\FileFinder.Properties.Resources.resources
?????文件????????674??2009-10-28?18:53??FileFinder\FileFinder\obj\Release\FileFinder.csproj.FileListAbsolute.txt
?????文件????????848??2009-10-28?18:52??FileFinder\FileFinder\obj\Release\FileFinder.csproj.GenerateResource.Cache
?????文件??????15872??2009-10-28?18:52??FileFinder\FileFinder\obj\Release\FileFinder.exe
?????文件????????180??2009-10-28?18:52??FileFinder\FileFinder\obj\Release\FileFinder.myForm.resources
?????文件??????30208??2009-10-28?18:52??FileFinder\FileFinder\obj\Release\FileFinder.pdb
?????文件????????180??2009-10-28?18:52??FileFinder\FileFinder\obj\Release\FileFinder.Properties.Resources.resources
?????文件????????503??2009-10-21?09:07??FileFinder\FileFinder\Program.cs
?????文件???????1432??2009-10-21?08:43??FileFinder\FileFinder\Properties\AssemblyInfo.cs
?????文件???????2849??2009-10-21?08:43??FileFinder\FileFinder\Properties\Resources.Designer.cs
?????文件???????5612??2009-10-21?08:43??FileFinder\FileFinder\Properties\Resources.resx
?????文件???????1095??2009-10-21?08:43??FileFinder\FileFinder\Properties\Settings.Designer.cs
?????文件????????249??2009-10-21?08:43??FileFinder\FileFinder\Properties\Settings.settings
............此處省略18個文件信息
評論
共有 條評論