• VC++ 遍历目录


    遍历文件目录,即把一个目录里的文件名都取出来。本文是CFileFind类的使用实例的笔记。下面的程序是从一个目录出发,把这个目录里的所有成员按着层次输出。

    代码如下:

    void TravelFolder(CString strDir, int nDepth)
    
    {
    
        CFileFind filefind;                                         //声明CFileFind类型变量
    
        CString strWildpath = strDir + _T("//*.*");     //所有文件都列出。
    
        if(filefind.FindFile(strWildpath, 0))                    //开始检索文件
    
        {
    
            BOOL bRet = TRUE;
    
            while(bRet)
    
            {
    
                bRet = filefind.FindNextFile();                 //枚举一个文件
    
                if(filefind.IsDots())                                 //如果是. 或 .. 做下一个
    
                    continue;
    
                for (int i = 0; i < nDepth; i ++)                 //层次空格打印
    
                {
    
                    TRACE(_T("    "));
    
                }
    
                if(!filefind.IsDirectory())                          //不是子目录,把文件名打印出来
    
                {
    
                    CString strTextOut = strDir + CString(_T("//")) + filefind.GetFileName();
    
                    TRACE(_T("file = %s/r/n"), strTextOut);
    
                }
    
                else                                                    //如果是子目录,递归调用该函数
    
                {
    
                    CString strTextOut = strDir + CString(_T("//")) + filefind.GetFileName();
    
                    TRACE(_T("dir = %s/r/n"), strTextOut);
    
                    TravelFolder(strTextOut, nDepth + 1);//递归调用该函数打印子目录里的文件
    
                }
    
            }
    
            filefind.Close();
    
        }
    
    }


    参考:MFC文件,文件夹操作

  • 相关阅读:
    hdu 4258 Covered Walkway
    hdu 2337 Escape from Enemy Territory
    二分查找
    hdu 2335 Containers
    最大流 Dinic
    进程和并发编程
    黏包
    socket
    网络编程
    异常处理
  • 原文地址:https://www.cnblogs.com/lit10050528/p/3622594.html
Copyright © 2020-2023  润新知