养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

MFC应用实例:[51]获得文件属性

时间:2024-11-08 02:56:53

获得文件的属性,包括文件的大小,文件的创建时间,修改时间,访问时间。还有只读,系统,隐藏,存档属性

工具/原料

MicrosoftVisualStudio2015

方法/步骤

1、新建一个基于对话框的应用程序,工程名为FileAttribute。

MFC应用实例:[51]获得文件属性

2、如下图为对话框添加三个按钮,一个编辑框,十一个静态文本和四个复选框控件。

MFC应用实例:[51]获得文件属性

3、为“打开”按钮建立响应脑栲葱蛸函数OnOpen(),在响应函数OnOpen()中添加一下代码:voidCFileAttribute肛舀辨乔Dlg::OnOpen()//打开文件{ //TODO:在此添加控件通知处理程序代码 CStringstrFilter="AllFiles(*.*)|*.*||"; CFileDialogdlg(TRUE,NULL,NULL,OFN_EXPLORER|OFN_HIDEREADONLY| OFN_ENABLESIZING|OFN_FILEMUSTEXIST,strFilter); if(dlg.DoModal()==IDOK) //显示打开文件对话框 { m_strFile=dlg.GetPathName(); UpdateData(false); }}

MFC应用实例:[51]获得文件属性

4、为获取属性按钮建立响应脑栲葱蛸函数OnGetAttr(),在响应函数OnGetAttr()中添加一下代码:voidCFileAtt鸡堕樱陨ributeDlg::OnGetAttr(){ //TODO:在此添加控件通知处理程序代码 UpdateData(TRUE); CFileStatusrStatus;//结构体 if(CFile::GetStatus(m_strFile,rStatus)) { m_strSize.Format("%d字节",rStatus.m_size);//文件大小 m_strCTime=rStatus.m_ctime.Format("%Y年%m月%d日%H:%M:%S");//创建时间 m_strMTime=rStatus.m_mtime.Format("%Y年%m月%d日%H:%M:%S");//修改时间 m_strATime=rStatus.m_atime.Format("%Y年%m月%d日%H:%M:%S");//访问时间 if((rStatus.m_attribute&0x01)==0x01)//判断是否只读 m_bReadOnly=TRUE; else m_bReadOnly=FALSE; if((rStatus.m_attribute&0x02)==0x02)//判断是否隐藏 m_bHidden=TRUE; else m_bHidden=FALSE; if((rStatus.m_attribute&0x20)==0x20)//判断是否存档 m_bArchive=TRUE; else m_bArchive=FALSE; if((rStatus.m_attribute&0x04)==0x04)//判断是否是系统文件 m_bSystem=TRUE; else m_bSystem=FALSE; UpdateData(FALSE);//更新显示 }}

MFC应用实例:[51]获得文件属性

5、程序运行如下,打开桌面的新建文本文件.txt运行如下:

MFC应用实例:[51]获得文件属性

MFC应用实例:[51]获得文件属性

© 一点知识