C文件查找按内容文件名称查找Word文档格式.doc
- 文档编号:13160562
- 上传时间:2022-10-07
- 格式:DOC
- 页数:9
- 大小:57KB
C文件查找按内容文件名称查找Word文档格式.doc
《C文件查找按内容文件名称查找Word文档格式.doc》由会员分享,可在线阅读,更多相关《C文件查找按内容文件名称查找Word文档格式.doc(9页珍藏版)》请在冰豆网上搜索。
Form
{
publicForm1()
{
InitializeComponent();
}
#region函数
///<
summary>
///选中的文件夹
/summary>
privateDirectoryInfo_dirSelected;
///检索关键字
privatestring_strKeyWord;
///存储文件的DataTable
privateDataTable_dtFileInfo;
///可查找的后缀名
privateHashtable_htExtension;
///检索方式:
1按内容检索2按文件名称检索
privateint_iQueryType=1;
privatebool_bFlagRunCompleted=true;
///是否区分大小写
privatebool_bFlagIsUpLower=true;
privateconstint_GB=1024*1024*1024;
//定义GB的计算常量
privateconstint_MB=1024*1024;
//定义MB的计算常量
privateconstint_KB=1024;
//定义KB的计算常量
privatedelegatevoiddlgShowSearchFileName(stringstrMsg);
privatedelegatevoiddlglBindDataTableToDataGridView();
#endregion
#region方法
#region跨线程访问控件
///跨线程访问控件:
显示检索文件名
paramname="
strMsg"
>
<
/param>
privatevoidAccessToControl_ShowSearchFileName(stringstrMsg)
if(this.InvokeRequired)
{
dlgShowSearchFileNamedlgShowMsg=newdlgShowSearchFileName(AccessToControl_ShowSearchFileName);
this.lblSearchMsg.Invoke(dlgShowMsg,newobject[]{strMsg});
}
else
this.lblSearchMsg.Text=string.Format("
正在检索{0}"
strMsg);
privatevoidAccessToControl_BindDataTableToDataGridView()
this.Invoke(newdlglBindDataTableToDataGridView(delegate()
this.dataGridView1.DataSource=null;
this.dataGridView1.DataSource=this._dtFileInfo;
}));
#region搜索
///检索
privatevoidSearch()
ArrayListalFile=newArrayList();
SearchFiles(this._dirSelected,refalFile);
///遍历文件夹下的所有文件
info"
alFileInfo"
privatevoidSearchFiles(FileSystemInfoinfo,refArrayListalFileInfo)
if(!
this._bFlagRunCompleted)
if(!
info.Exists)return;
DirectoryInfodir=infoasDirectoryInfo;
if(dir==null)return;
FileSystemInfo[]files=dir.GetFileSystemInfos();
for(inti=0;
i<
files.Length;
i++)
{
if(!
{
FileInfofile=files[i]asFileInfo;
if(file!
=null)
{
AccessToControl_ShowSearchFileName(file.FullName);
//显示检索信息
stringstrKeyWordTmp=this._strKeyWord;
if(this._iQueryType==1)//按照文件内容检索
{
if(this._htExtension.ContainsValue(file.Extension))
{
try
{
StreamReadersr=newStreamReader(file.FullName);
stringstrContent=sr.ReadToEnd();
intiRowNumber=0;
stringstrContentTmp=strContent;
if(!
this._bFlagIsUpLower)
{
strContentTmp=strContent.ToUpper();
strKeyWordTmp=this._strKeyWord.ToUpper();
}
iRowNumber=GetFindTextLine(strContentTmp,strKeyWordTmp,0);
if(iRowNumber>
0)
//添加到表格
AddToDataGridView(file,iRowNumber);
a
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 文件 查找 内容 文件名称