C++中实现文件修改时间间隔查询 MFC


最近因为科研工作要求,需要对系统生成的一个文件添加一个计时器,来判断如果最近一次修改文件的时间间隔是否超出了我们系统的设定,所以需要用到 MFC 里的CFile 类、CFileStatus 类、CTime类以及 CTimeSpan类。

CFileStatus定义:

/*============================================================================*/
// File status

struct CFileStatus
{
	CTime m_ctime;          // creation date/time of file
	CTime m_mtime;          // last modification date/time of file
	CTime m_atime;          // last access date/time of file
	ULONGLONG m_size;       // logical size of file in bytes
	DWORD m_attribute;      // logical OR of CFile::Attribute enum values
	TCHAR m_szFullName[_MAX_PATH]; // absolute path name

#ifdef _DEBUG
	void Dump(CDumpContext& dc) const;
#endif
};
其中m_ctime、m_mtime、m_atime 分别为文件创建时间,文件最后一次修改时间,文件最后一次访问时间。

在自己的代码里实现文件修改间隔时间查询,其中filename为文件路径

CFileStatus FileStatus;     
CTime file_mod_time;   // 文件的修改时间
CTime file_curr_time = CTime::GetCurrentTime();  // 当前系统时间

if (CFile::GetStatus(filename, FileStatus))
{
	file_mod_time = FileStatus.m_mtime;
}
CTimeSpan file_time_span = file_curr_time - file_mod_time;	 // 间隔时间

最后得到file_time_span,为文件修改时间的间隔。


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值