MFC读写文件实例
程序功能:点击写入文件按钮将输入编辑框中内容写入以系统时间命名的文件中,点击读取文件按钮将选中的文件内容显示到静态文本控件中。
相关代码如下:
void CWR_FILEDlg::OnButton1()
{
CString str;
GetDlgItem(IDC_EDIT1)->GetWindowText(str);
nLength=str.GetLength();
sz=new char[nLength];
sz=str.GetBuffer(0);
CString strFileName;
strFileName.Format("%s%s.MBD",m_strCurDataPath,
CTime::GetCurrentTime().Format("%Y%m%d%H%M%S"));
CFile file;
file.Open(strFileName,CFile::modeCreate|CFile::modeWrite);
char buf[64];
sprintf(buf,"%s",sz);
file.Write(buf,sizeof(buf));
tm = CTime::GetCurrentTime();
file.Write(&tm,sizeof(tm));
file.Close();
}
void CWR_FILEDlg::OnButton2()
{
CString strFileName;
CFileDialog dlg(TRUE,"",strFileName,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
"数据文件(*.MBD)|*.MBD||");
if(dlg.DoModal() == IDOK)
{
m_strFileName = dlg.GetPathName();
CFile file;
file.Open(m_strFileName,CFile::modeRead);
char buf[64];
file.Read(buf,sizeof(buf));
file.Read(&tm,sizeof(tm));
file.Close();
CString str =tm.Format("%Y-%m-%d %H:%M:%S");
SetDlgItemText(IDC_STATIC1,buf);
SetDlgItemText(IDC_STATIC2,str);
}
}