如何读取一个资料夹中所有文件的大小,我要将其复制到另一个硬盘中,并判断其是否复制正确? 各位有这方面的代码吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 递归拷贝:void FolderFileCopy(CString strSource,CString strDestin){ CString strNewPath(strSource); CString strNew; CString strDestFile; CString strTemp; CString strSection; CString strKey; CString strName; HANDLE hFile; WIN32_FIND_DATA wfd; if(strNewPath == "") return; strNewPath += "\\*.*"; hFile = ::FindFirstFile(strNewPath,&wfd); if( hFile == INVALID_HANDLE_VALUE ) return; do { if(wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) { strName.Format("%s",wfd.cFileName); if(lstrcmp(wfd.cFileName,".") == 0 || lstrcmp(wfd.cFileName,"..") == 0) continue; strNew = strNewPath; strNew = strNew.Left(strNew.GetLength()-3); strNew += strName; strTemp = strDestin + "\\" + strName; ::CreateDirectory(strTemp,NULL); FolderFileCopy(strNew,strTemp); } else if(((wfd.dwFileAttributes & (FILE_ATTRIBUTE_HIDDEN|FILE_ATTRIBUTE_SYSTEM)) == 0)) { strName.Format("%s",wfd.cFileName); strNew = strNewPath; strNew = strNew.Left(strNew.GetLength()-3); strTemp = strNew + strName; strDestFile = strDestin + "\\" + strName;File:"); ::CopyFile(strTemp,strDestFile,TRUE); } }while(::FindNextFile(hFile,&wfd)); FindClose(hFile);}//************************************************************ 用SHFileOperation(LPSHFILEOPSTRUCT lpshfileopstruct)这个函数 谢谢!但我如何知道我所copy的文件是否正确呢,即如何判断其大小一致呢? 看函数操作的返回值呀,看msdn就可以了 如何判断串口是否被打开? WSAEventSelect模型的工作模式 如果以程序方式启用多屏选项 如何判断当前系统的语言版本? 如何发需要smtp认证的邮件,谁有源代码?分不够还可以加 怎么解决MFC??.DDL的问题 怎样发送一个组合键,如shift+tab 机器视觉系统硬件选型(点焊机)在线等。。。。。 不用DirectShow做摄像头程序,用纯vc和mfc可以吗 IDispatch error #3159 大家认为我学什么好呢,谢谢!! XP风格的界面实现的原理是什么?
void FolderFileCopy(CString strSource,CString strDestin)
{
CString strNewPath(strSource);
CString strNew;
CString strDestFile;
CString strTemp;
CString strSection;
CString strKey;
CString strName;
HANDLE hFile;
WIN32_FIND_DATA wfd; if(strNewPath == "")
return; strNewPath += "\\*.*";
hFile = ::FindFirstFile(strNewPath,&wfd);
if( hFile == INVALID_HANDLE_VALUE )
return; do
{
if(wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
strName.Format("%s",wfd.cFileName);
if(lstrcmp(wfd.cFileName,".") == 0 || lstrcmp(wfd.cFileName,"..") == 0)
continue;
strNew = strNewPath;
strNew = strNew.Left(strNew.GetLength()-3);
strNew += strName;
strTemp = strDestin + "\\" + strName;
::CreateDirectory(strTemp,NULL);
FolderFileCopy(strNew,strTemp);
}
else if(((wfd.dwFileAttributes & (FILE_ATTRIBUTE_HIDDEN|FILE_ATTRIBUTE_SYSTEM)) == 0))
{
strName.Format("%s",wfd.cFileName);
strNew = strNewPath;
strNew = strNew.Left(strNew.GetLength()-3);
strTemp = strNew + strName;
strDestFile = strDestin + "\\" + strName;
File:");
::CopyFile(strTemp,strDestFile,TRUE);
}
}while(::FindNextFile(hFile,&wfd));
FindClose(hFile);
}
//************************************************************
但我如何知道我所copy的文件是否正确呢,即如何判断其大小一致呢?