CFile::GetStatus

函数原型:

BOOL GetStatus( 
   CFileStatus& rStatus  
) const; 

static BOOL PASCAL GetStatus( 
   LPCTSTR lpszFileName, 
   CFileStatus& rStatus, 
   CAtlTransactionManager* pTM = NULL 
);

参数

  • rStatus
    要获取状态信息的 CFileStatus 结构的引用。 CFileStatus 结构具有下列字段:

    • CTime m_ctime 文件创建日期和时间。

    • CTime m_mtime 文件的上次更新的日期和时间。

    • CTime m_atime 文件用于读取最后访问的日期和时间。

    • ULONGLONG m_size 文件的逻辑大小(以字节为单位),如报告DIR命令。

    • BYTE m_attribute 文件的属性字节。

    • char m_szFullName[_MAX_PATH] 在Windows字符集的绝对文件名。

  • lpszFileName
    在路径所需文件的Windows字符集的字符串。 路径可以是相对路径或绝对的,也可以包含网络路径名。

  • pTM
    为CAtlTransactionManager对象的指针

返回值

如果指定的文件的状态信息成功获取,返回TRUE;  否则,FALSE

 

说明

GetStatus 的非静态版本检索打开文件的状态信息与特定 CFile 对象。 GetStatus 的静态版本获取从特定文件路径的文件状态,而不会实际打开文件。 这将用于测试文件是否存在以及访问权限很有用。

CFileStatus 结构的 m_attribute 成员引用设置的文件属性。 CFile 选件类提供 Attribute 枚举类型,因此文件属性可以指定标记:

enum Attribute {

normal = 0x00,    readOnly = 0x01,     hidden = 0x02,     system = 0x04,     volume = 0x08,    directory = 0x10,    archive = 0x20

};

 

实例:

CFile cfile;
cfile.Open(_T("SetLength_File.dat"), CFile::modeCreate |
   CFile::modeReadWrite);
ULONGLONG dwNewLength = 10000;
cfile.SetLength(dwNewLength);
CFileStatus status;
if(cfile.GetStatus(status))    // virtual member function
{
   TRACE(_T("File size = %u\n"), status.m_size);
}
TCHAR* pszFileName = _T("SetLength_File.dat");
if(CFile::GetStatus(pszFileName, status))   // static function
{
   TRACE(_T("Full file name = %s\n"), status.m_szFullName);
}

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值