字体
第(3/5)页
关灯
   存书签 书架管理 返回目录
找到子目录文件,则调用自身删除这个子目录。代码

    如下:

    //CMyFile 是一个自定义功能的文件cāo作类

    //DeleteTree 函数用于删除目录,并同时删除目录中的所有子目录和文件

    //参数strDir 用于确定要删除的目录名

    void CMyFile::DeleteTree(CString strDir)

    {

    CFileFind finder; //创建一个目录搜索类

    CString delFile=strDir;

    delFile+="\\*.*"; //设置搜索目录的通配符

    //开始搜索,bWorking 用于表示是否搜索到新文件

    BOOL bWorking = finder.FindFile(delFile);

    //如果bWorking 为TRUE 则继续循环

    while (bWorking)

    {

    //获取下一个文件

    bWorking = finder.FindNextFile();

    //获取找到的文件名

    CString filencom=finder.GetFilePath();

    //如果文件是一个目录,而且不是一个“.”或者“..”的目录

    //那么删除这个子目录

    枫叶文学网www.fywxw.com

    第8 章 文件cāo作

    ·203·

    if(finder.IsDirectory()&&(!finder.IsDots()))

    {

    //递归调用自身删除子目录

    Delete(filencom);

    }

    else if (!finder.IsDots()) //如果文件不是一个“.”或者“..”的文件则删除该文件

    {

    CFile::Remove(filencom); //删除文件

    }

    }

    //文件查找完毕,所有文件都已经删除,目录清空

    RemoveDirectory(strDir); //删除空目录

    }

    8.3 文件对话框

    第4 章已经介绍过文件对话框的基本使用方法。现在介绍一些关于CFileDialog 的高级使

    用方法,包括多选文件对话框的使用方法和重载文件对话框的方法,使得程序能更灵活地控

    制文件对话框。

    8.3.1 多选文件对话框

    当构造CFileDialog 类时指定了OFN_ALLOWMULTISELECT 的属xìng,则CFileDialog 允

    许用户选择多个文件,如图8-3 所示。

    当设置允许多选的文件对话框时,与普通使用惟一的区别就是如何获得所有选定的文

    件。这就用到CFileDialog::GetStartPosition()和CFileDialog::GetNextPathNcom()两个函数。

    图8-3 可以多选的打开文件对话框

    CFileDialog::GetStartPosition()函数用于获得选择列表中的第一个文件路径名的位置,其

    原型为:
上一页 目录 下一页