FindFirstFile
C++Builderでファイル更新のチェックツールを作成した。
ボツにしたソースコードは、もったいないので
ここに残す。
AnsiString asPath = Edit1->Text+"\\*.*";
HANDLE hFind;
WIN32_FIND_DATA fd;
FILETIME ft;
SYSTEMTIME st;
/* 最初のファイル検索 */
hFind = FindFirstFile(asPath.c_str(), &fd);
/* 検索失敗? */
if(hFind == INVALID_HANDLE_VALUE) {
StringGrid->Cells[1][1] = "検索失敗";
return;
}
do {
StringGrid->Cells[0][vrow] = ++num;
vcol = StringGrid->FixedCols;
/* 更新時間取得 */
FileTimeToLocalFileTime(&fd.ftLastWriteTime, &ft);
FileTimeToSystemTime(&ft, &st);
if(fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
;// printf("(ディレクトリ)");
}else{
StringGrid->Cells[vcol++][vrow] = fd.cFileName;
vrow++;
}
/*
printf("ファイル名: %s", fd.cFileName);
if(fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
printf("(ディレクトリ)");
}
printf("\n短いファイル名: %s\n", fd.cAlternateFileName);
printf("ファイルサイズ: %d\n", fd.nFileSizeLow);
printf("更新日: %04d/%02d/%02d %02d:%02d:%02d\n\n",
st.wYear, st.wMonth, st.wDay, st.wHour, st.wMinute, st.wSecond);
*/
} while(FindNextFile(hFind, &fd));
この記事が気に入ったらサポートをしてみませんか?