读书人

怎么取得文件夹的创建时间? 小弟我的代

发布时间: 2012-01-19 20:57:58 作者: rapoo

如何取得文件夹的创建时间? 我的代码怎么不行呢?
#include "StdAfx.h "
#include "windows.h "
//FILE_ATTRIBUTE_DIRECTORY
int main()
{
WIN32_FIND_DATA FindFileData;
WIN32_FILE_ATTRIBUTE_DATA ataex;
HANDLEhFind;
DWORDdwAttrs;
BOOLfFinished;
SYSTEMTIMEst, stUTC, stLocal;
GetSystemTime(&st);
fFinished = FALSE;

hFind = FindFirstFile( "f:\\* ", &FindFileData);
if (hFind == INVALID_HANDLE_VALUE)
{
return 1;
}

while (!fFinished)
{
dwAttrs = GetFileAttributes(FindFileData.cFileName);
if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
printf(FindFileData.cFileName );
printf( " -> ");
GetFileAttributesEx(FindFileData.cFileName, GetFileExInfoStandard, &ataex);
FileTimeToSystemTime(&(ataex.ftCreationTime), &stLocal);
printf( "%02d/%02d/%d %02d:%02d ", stLocal.wDay, stLocal.wMonth, stLocal.wYear, stLocal.wHour, stLocal.wMinute);
printf( "\n ");
}

if (!FindNextFile(hFind, &FindFileData))
{
if (GetLastError() == ERROR_NO_MORE_FILES)
{
fFinished = TRUE;
}
else
{
return 0;
}
}
}
return 1;
}



[解决办法]
WIN32_FIND_DATA中就有文件属性和文件时间。
[解决办法]
CFileFind类GetCreationTime()方法可以
[解决办法]
1楼说的没错,WIN32_FIND_DATA 里面就有时间

至于你的方法为什么取不到,这是因为FindFileData.cFileName里面不包含路径,只有文件名。

如果要取得文件的信息,必须用全路径文件名。

读书人网 >VC/MFC

热点推荐