问一个关于打开文件的问题
下面是我打开文件的一段程序,点击按钮,出现“打开”窗口,然后选中文件,就可以把文件内的信息显示在编辑框里头了,
但是现在出现这么一个问题???当我点击按钮,出现“打开”窗口时,我不选文件,直接再把“打开”窗口关闭,这时就不能回到原来了,出现Debug Assertion Failed,请问这怎么解决???我的程序里头是不是有什么语句不符合VC++规则?????谢谢
CFileDialog
dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"文本文件(*.txt)|*.txt||",NULL);
CString m_filename;
if(dlg.DoModal()==IDOK)
{
m_filename=dlg.GetFileName();
Invalidate(false);
}
FILE *pFile=fopen(m_filename,"rb+"); //以二进制方式打开
unsigned char *pBuf;
fseek(pFile,0,SEEK_END);
int len=ftell(pFile); //获取文件长度
pBuf=new unsigned char[len+1];
rewind(pFile); //将文件指针重新放置到文件的开始处
fread(pBuf,1,len,pFile);
pBuf[len]=0;
fclose(pFile);
GetDlgItem(IDC_EDIT3)->SetWindowText(pBuf);
delete []pBuf;