-
CFile::GetStatus
鎖定
GetStatus的虛擬版本獲取與CFile對象有關的文件的狀態,不把值插入到m_szFullName結構成員中。靜態版本獲取文件狀態並把文件名拷入m_szFullName。此函數從文件目錄入口獲取文件狀態而不打開文件,這對於測試已存在和訪問權限十分有用。
- 外文名
- CFile::GetStatus
- 所屬學科
- 計算機
CFile::GetStatus
BOOL GetStatus(CFileStatus& rStatus)const;
static BOOL PASCAL GetStatus(LPCSTR lpszFileName, CFileStatus& rStatus);
返回值:如果指定文件的狀態信息成功獲取,則為TRUE,否則為FALSE。
參數:
rStatus | 用户提供的CFileStatus結構的參考,用來接收狀態信息。CFileStatus結構有以下字段: ·CTime m_ctime文件創建的時間。 ·CTime m_mtime文件最後一次修改的時間。 ·CTime m_atime最後一次訪問文件並讀取的時間。 ·LONGm_size文件邏輯長度,以字節數表示,如同DIR命令報告的那樣。 ·BYTEm_attribute文件屬性字節。 ·Charm_szFullName[_MAX_PATH]Windows字符集表示的全文件名。 |
lpszFileName | Windows字符集表示的文件路徑,此路徑可為絕對的或為相對的,但不包含網絡名。 |
説明:
m_attribute是文件屬性,MFC提供一個enum類型的屬性,這樣就可以用符號指定屬性:
enumAttribute { normal=0x00, readOnly=0x01, hidden=0x02, system=0x04, volume=0x08, directory=0x10, archive=0x20 };
示例:
//exampleforCFile::GetStatus CFileStatusstatus; ExternCFilecfile; If(cfile.GetStatus(status))//virtualmemberfunction { #ifdef_DEBUG afxDump<<"Filesize="<<status.m_size<<"\n"; #endif } char*pFileName="test.dat"; if(CFile::GetStatus(pFileName,status))//statusfunction { #ifdef_DEBUG afxDump<<"FullFilename="<<status.m_szFullName<<"\n"; #endif }
請參閲:CFile::SetStatus, CTime
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:4次歷史版本
- 最近更新: 许嵩萌内