c++课程设计(文件搜索).doc

上传人:小** 文档编号:87217065 上传时间:2019-03-29 格式:DOC 页数:8 大小:183.50KB
返回 下载 相关 举报
c++课程设计(文件搜索).doc_第1页
第1页 / 共8页
c++课程设计(文件搜索).doc_第2页
第2页 / 共8页
c++课程设计(文件搜索).doc_第3页
第3页 / 共8页
c++课程设计(文件搜索).doc_第4页
第4页 / 共8页
c++课程设计(文件搜索).doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《c++课程设计(文件搜索).doc》由会员分享,可在线阅读,更多相关《c++课程设计(文件搜索).doc(8页珍藏版)》请在金锄头文库上搜索。

1、 C + +课程设计报告 课程名称: C+ 语言程序设计 设计题目: 文件搜索 专 业: 信息与计算科学 班 级: 信091 姓 名: * 学 号: 2009314114 指导教师: 孙志田 河北建筑工程学院数理系 2012年5月课程设计题目(问题)描述用C+语言设计一个简单的文件搜索程序,实现对文件的搜索功能。具体要求如下: 要求用C+面向对象的思想来完成程序的设计。 要求能够在任意路径下搜索指定文件名的文件设计的功能描述设计的功能描述程序运行界面如下:在E盘搜索文件名为2009314114的文件:具体代码:源程序代码如下:/ 2009314114Dlg.cpp : implementati

2、on file#include stdafx.h#include 2009314114.h#include 2009314114Dlg.h/ CMy2009314114Dlg dialogCMy2009314114Dlg:CMy2009314114Dlg(CWnd* pParent /*=NULL*/): CDialog(CMy2009314114Dlg:IDD, pParent)/AFX_DATA_INIT(CMy2009314114Dlg)m_filename = _T();m_path = _T();m_info = _T();/AFX_DATA_INITm_hIcon = AfxGet

3、App()-LoadIcon(IDR_MAINFRAME);m_bstop = TRUE;void CMy2009314114Dlg:DoDataExchange(CDataExchange* pDX)CDialog:DoDataExchange(pDX);/AFX_DATA_MAP(CMy2009314114Dlg)DDX_Control(pDX, IDC_EDIT, m_infoCtrl);DDX_Text(pDX, IDC_EDITMASK, m_filename);DDX_Text(pDX, IDC_EDITROOT, m_path);DDX_Text(pDX, IDC_EDIT, m

4、_info);/AFX_DATA_MAPBEGIN_MESSAGE_MAP(CMy2009314114Dlg, CDialog)/AFX_MSG_MAP(CMy2009314114Dlg)ON_WM_SYSCOMMAND()ON_WM_PAINT()ON_WM_QUERYDRAGICON()ON_BN_CLICKED(IDOK, OnButton1)ON_BN_CLICKED(IDSTOP, OnButton2)ON_BN_CLICKED(IDC_BTBROWSE, OnButton3)/AFX_MSG_MAPEND_MESSAGE_MAP()/ CMy2009314114Dlg messag

5、e handlersBOOL CMy2009314114Dlg:OnInitDialog()CDialog:OnInitDialog();/ Add About. menu item to system menu./ IDM_ABOUTBOX must be in the system command range.ASSERT(IDM_ABOUTBOX & 0xFFF0) = IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX AppendMenu(MF_SEPARATOR);pSysMenu-AppendMenu(MF_STRING, IDM_ABOUTBOX, strAbo

6、utMenu);/ Set the icon for this dialogSetIcon(m_hIcon, TRUE);/ Set big iconSetIcon(m_hIcon, FALSE);/ Set small icon/ TODO: Add extra initialization herereturn TRUE; / return TRUE unless you set the focus to a controlvoid CMy2009314114Dlg:OnSysCommand(UINT nID, LPARAM lParam)if (nID & 0xFFF0) = IDM_A

7、BOUTBOX)CAboutDlg dlgAbout;dlgAbout.DoModal();elseCDialog:OnSysCommand(nID, lParam);void CMy2009314114Dlg:OnPaint() if (IsIconic() CPaintDC dc(this); / device context for paintingSendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);/ Center icon in client rectangleint cxIcon = GetSystemMetric

8、s(SM_CXICON);int cyIcon = GetSystemMetrics(SM_CYICON);CRect rect;GetClientRect(&rect);int x = (rect.Width() - cxIcon + 1) / 2;int y = (rect.Height() - cyIcon + 1) / 2;/ Draw the icondc.DrawIcon(x, y, m_hIcon); else CDialog:OnPaint(); HCURSOR CMy2009314114Dlg:OnQueryDragIcon()return (HCURSOR) m_hIcon

9、;void CMy2009314114Dlg:OnButton1() if(m_bstop = FALSE) AfxMessageBox(正在搜索);return; UpdateData(TRUE);if(m_filename = | m_path = ) AfxMessageBox(搜索内不能为空!);return ;m_info.Empty();m_info = 开始搜索rn;UpdateData(FALSE);m_bstop = FALSE;AfxBeginThread(SerchThread,this);void CMy2009314114Dlg:EnumAllFiles(CStrin

10、g StrPath,CString TargetFile)CFileFind OneFile;CString FileName, DirName; /FileName文件名,包括后缀DirName ,即文件夹名BOOL BeWorking; m_res = 未找到指定的文件!;DirName = StrPath+_T(*.*);BeWorking = OneFile.FindFile( DirName );/先搜索当前目录while ( BeWorking & (!m_bstop) ) BeWorking = OneFile.FindNextFile();/获得一个文件if ( OneFile

11、.IsDots() ) continue; /不是需要的文件,跳过继续寻找下一个File or Folderif ( OneFile.IsDirectory() ) elseFileName = OneFile.GetFileName (); /Get the FileNameif (FileName=TargetFile) m_res = 找到文件:;m_res += OneFile.GetFilePath();MessageBox(m_res);m_bstop = TRUE; /搜索子目录DirName = StrPath+_T(*.*);BeWorking = OneFile.FindF

12、ile( DirName );while ( BeWorking & (!m_bstop) ) BeWorking = OneFile.FindNextFile();/获得一个文件if ( OneFile.IsDots() ) continue; /不是需要的文件,跳过继续寻找下一个File or Folderif ( OneFile.IsDirectory() ) DirName = OneFile.GetFilePath(); /Get One Pathm_info += DirName;m_info += rn;SetDlgItemText(IDC_EDIT,m_info);m_infoCtrl.SetSel(m_info.GetLength(),m_info.GetLength();EnumAllFiles(DirName,TargetFile);FileName = OneFile.GetFileName (); /Get the FileNameif (FileName=TargetFile) m_res = 找到文件:;m_res += OneFile.GetFilePath();MessageBox(m_res);m_bstop = TRUE;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号