获得一个比较大的文件大小

来源:互联网 发布:第二代身份证照片软件 编辑:程序博客网 时间:2024/04/20 12:04

       在编写代码的时候,遇到一个问题(计算处理文件进度百分比),需要计算出所有文件大小,而每一个文件都是几个G。

用下面方法可以实现获取一个文件大小(vs2005):

第一步:

HANDLE hFile = CreateFile(filename, GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ, NULL, OPEN_EXISTING,
           FILE_ATTRIBUTE_NORMAL, NULL);

if(hFile==NULL)
     {
      /*printf("Fail in CreateFile\n");*/
      break;
     }

第二步:

 LARGE_INTEGER dwOneFileSize;

   //获得当前一个文件长度
   GetFileSizeEx(hFile,&dwOneFileSize);

第三步:

uIn64 Onefilelen;

             Onefilelen = dwOneFileSize.QuadPart;

第四步:

CloseHandle(hFile)

 

      知道了怎么获得一个文件大小,就可以获得所有文件大小了!