获取文件夹大小

来源:互联网 发布:mp4视频修复软件 编辑:程序博客网 时间:2024/06/05 18:27
//获取文件夹的大小DWORD64 CCDBurnDlg::GetFolderSize(LPCTSTR lpFileName){CString strTemp;strTemp.Format(_T("%s"), lpFileName);strTemp += _T("\\*");WIN32_FIND_DATA FindFileData;//获取文件属性信息memset(&FindFileData, 0x00, sizeof(WIN32_FIND_DATA));HANDLE hParent;hParent = FindFirstFile(strTemp,&FindFileData);if (hParent == INVALID_HANDLE_VALUE){return 0;}WIN32_FIND_DATA subFile;memset(&subFile, 0x00, sizeof(WIN32_FIND_DATA));BOOL bRet = FindNextFile(hParent, &FindFileData);DWORD64 nSize = 0;while(FindNextFile(hParent, &FindFileData)){DWORD dwAttr = FindFileData.dwFileAttributes & 0x00000010;//判断属性是否是文件夹if (dwAttr == FILE_ATTRIBUTE_DIRECTORY ) {DWORD64 nSize1=0;CString strTemp;strTemp.Format(_T("%s"), lpFileName);strTemp += _T("\\");strTemp += FindFileData.cFileName;/*strTemp += _T("\\*");*/nSize1 = GetFolderSize( strTemp);nSize += nSize1;}DWORD64 filesize = FindFileData.nFileSizeHigh * 0xffffffff + FindFileData.nFileSizeLow;nSize += filesize;}FindClose(hParent);return nSize;}


原创粉丝点击