MFC 相关文件夹、文件操作

时间:2021-09-23 04:09:46

//关于文件(夹)操作,可以参考下SHFileOperation这个外壳函数,貌似可以显示进度条。
以下没有使用SHFileOperation
//删除一个文件夹下的所有内容
void myDeleteDirectory(CString directory_path)
{    
    CFileFind finder; 
    CString path; 
    path.Format("%s/*.*",directory_path); 
    BOOL bWorking = finder.FindFile(path); 
    while(bWorking){ 
        bWorking = finder.FindNextFile(); 
        if(finder.IsDirectory() && !finder.IsDots()){//处理文件夹 
            myDeleteDirectory(finder.GetFilePath()); //递归删除文件夹 
            RemoveDirectory(finder.GetFilePath()); //删除文件夹,只能删除空的文件夹
        } 
        else{//处理文件 
            DeleteFile(finder.GetFilePath());//删除文件
        } 
    } 
}
PathIsDirectory(path)//判读path是否为文件夹
PathFileExists(path)//判读path是否存在
CreateDirectory(newPath,NULL)//创建一个文件夹
CopyFile(srcfile,dstfile,false)//复制文件