通过winapi获取文件大小
编者:李国帅
背景原因:
获取文件大小有多种方式,这里介绍一种通过GetFileAttributesEx函数获取文件大小的方法。
所需资源:
在vc中进行测试。
解决方案:
long getFileSize(const wchar_t
{
GET_FILEEX_INFO_LEVELS fInfoLevelId = GetFileExInfoStandard;
WIN32_FILE_ATTRIBUTE_DATA FileInformation;
// //通过winapi获取文件属性
BOOL bGet = GetFileAttributesEx(filename,fInfoLevelId,&FileInformation);
if(bGet)
{
_fsize_t nFileSizeLow = FileInformation.nFileSizeLow;
_fsize_t nFileSizeHigh = FileInformation.nFileSizeHigh;
ULARGE_INTEGER szFile;
// 超大文件才需要
szFile.LowPart = nFileSizeLow;
return
}
return
}
int __cdecl _tmain (int
{
wchar_t* lpFileName = L"E:\\downloads\\medias\\welcome.png";
long
" file size = " << filesize << L" bytes"
"pause"));
return
}