C++ 获取文件的属性

void CFileStatusDlg::OnOpenFile() 
{
	m_hidden.SetCheck(0);
	m_readonly.SetCheck(0);
	m_archive.SetCheck(0);
	m_normal.SetCheck(0);
	m_system.SetCheck(0);
	m_filedir.SetCheck(0);
	CFileDialog log(TRUE,"文件","*.*",OFN_HIDEREADONLY,"FILE(*.*)|*.*||",NULL);
	if(log.DoModal()==IDOK)
	{
		CString pathname=log.GetPathName();
		m_filepath.SetWindowText(pathname);
		CFileStatus status;
		CFile::GetStatus(pathname,status);
		CString size;
		size.Format("%d",status.m_size);
		m_filesize.SetWindowText(size);
		CTime ctime=status.m_ctime;
		CTime mtime=status.m_mtime;
		CTime atime=status.m_atime;
		m_ctime.SetWindowText(ctime.Format("%Y年%m月%d日%H:%M:%S"));
		m_mtime.SetWindowText(mtime.Format("%Y年%m月%d日%H:%M:%S"));
		m_atime.SetWindowText(atime.Format("%Y年%m月%d日%H:%M:%S"));
		if(status.m_attribute&0x02)
			m_hidden.SetCheck(1);
		if(status.m_attribute&0x01)
			m_readonly.SetCheck(1);
		
		if(status.m_attribute&0x00)
			m_archive.SetCheck(1);
		if(status.m_attribute&0x20)
			m_normal.SetCheck(1);
		if(status.m_attribute&0x04)
			m_system.SetCheck(1);
		if(status.m_attribute&0x10)
		m_filedir.SetCheck(1);
	}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值