首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 计算机考试 > 等级考试 > 复习指导 >

C/C++多种方法获取文件大小

2009-06-26 
C/C++多种方法获取文件

  C/C++多种方法获取文件大小

  #include

  #include

  #include

  #include

  #define _AFXDLL

  using namespace std;

  void main()

  {

  // 此文件在工程打开状态下为不可访问

  char* filepath = "..\test.ncb";

  // 方法一

  struct _stat info;

  _stat(filepath, &info);

  int size = info.st_size;

  cout<

  // 方法二

  FILE* file = fopen(filepath, "rb");

  if (file)

  {

  int size = filelength(fileno(file));

  cout<

  fclose(file);

  }

  // 方法三

  CFile cfile;

  if (cfile.Open(filepath, CFile::modeRead))

  {

  int size = cfile.GetLength();

  cout<

  }

  // 方法四

  HANDLE handle = CreateFile(filepath, FILE_READ_EA, FILE_SHARE_READ, 0, OPEN_EXISTING, 0, 0);

  if (handle != INVALID_HANDLE_VALUE)

  {

  int size = GetFileSize(handle, NULL);

  cout<

  CloseHandle(handle);

  }

  }

  也可以直接调用WinAPI函数GetFileSize嘛,

  DWORD WINAPI GetFileSize(

  __in HANDLE hFile,

  __out LPDWORD lpFileSizeHigh

  );

  支持Win2000及以后的系统

 

3COME考试频道为您精心整理,希望对您有所帮助,更多信息在http://www.reader8.com/exam/

热点排行