CFile
また、ファイルが存在するかどうか、作成と変更の日付と時刻、論理サイズ、パスなど、ファイルの状態の取得もサポートしています。
ファイルの状態を取得するには
-
CFile クラスを使用して、ファイルに関する情報を取得および設定します。 便利なアプリケーションの 1 つは、
CFile
静的メンバー関数 GetStatus を使用して、ファイルが存在するかどうかを判断することです。 指定したファイルが存在しない場合、GetStatus は 0 を返します。
したがって、 GetStatus の結果を使用して、次の例に示すように、ファイルを開くときに CFile::modeCreate フラグを使用するかどうかを判断できます。
CFile theFile;
TCHAR* szFileName = _T("c:\\test\\myfile.dat");
BOOL bOpenOK;
CFileStatus status;
if( CFile::GetStatus( szFileName, status ) )
{
// Open the file without the Create flag
bOpenOK = theFile.Open( szFileName,
CFile::modeWrite );
}
else
{
// Open the file with the Create flag
bOpenOK = theFile.Open( szFileName,
CFile::modeCreate | CFile::modeWrite );
}
関連情報については、「 シリアル化」を参照してください。