ファイルの最新更新時間を取得するには、以下のようにします。
// ファイルの最終更新時間を取得(世界時間)
// sFilePath=ファイルパス、fTime=ファイル最終更新時間
bool getFileTime(const char* sFilePath, FILETIME& fTime)
{
bool ret = false;
CFile file;
if(file.Open(sFilePath, CFile::modeRead)){
// 世界時間
if(GetFileTime((HANDLE)file.m_hFile, NULL, NULL, &fTime)){
ret = true;
}
}
return ret;
}
// ファイルの最新更新時間情報の取得(システム時間)
// sFilePath=ファイルパス、stWrite=ファイル最終更新時間情報
bool getFileTimeInfo(const char* sFilePath, SYSTEMTIME& stWrite)
{
bool ret = false;
// 世界時間
FILETIME fTime;
if(getFileTime(sFilePath, fTime)){
// 日本時間に変換
FILETIME lTime;
if(FileTimeToLocalFileTime(&fTime, &lTime)){
// 使える形に変換
if(FileTimeToSystemTime(&lTime, &stWrite)){
ret = true;
}
}
}
return ret;
}
|