怎么在MFC中打开一个文件,如单击一个按钮,然后弹出选择文件的框框,我需要打开这个文件!

 我来答
那壹抹嫣红
推荐于2017-10-12 · TA获得超过114个赞
知道答主
回答量:88
采纳率:0%
帮助的人:61.5万
展开全部
//文件属性定义
CString filename;
CString fileext;//文件扩展名
CString filepathname;
//选择文件
CFileDialog fpdlg(TRUE, NULL, NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,"(文件类型)(*.dat)|*.dat|(文件类型)(*.sth)|*.sth|所有文件(*.*)|*.*||",NULL);
if(fpdlg.DoModal() == IDOK)
{
filename = fpdlg.GetFileName();
fileext = fpdlg.GetFileExt();//文件扩展名
filepathname = fpdlg.GetPathName();
//UpdateData(FALSE);
}
//打开文件
CFile fp;
if(filepathname ==_T(""))
{
//AfxMessageBox("请选择文件!");
return ;
}
if(!(fp.Open((LPCTSTR)filepathname,CFile::modeRead)))
{
AfxMessageBox("文件打开失败!");
return ;
}
//读取文件
fp.SeekToEnd();
unsigned long len = fp.GetLength();
char* buff;
buff=new char[len+1];
fp.SeekToBegin();
if(fp.Read(buff,len)<1)
{
fp.Close();
}
fp.Close();
lucasf
2011-01-06 · 超过44用户采纳过TA的回答
知道小有建树答主
回答量:125
采纳率:0%
帮助的人:0
展开全部
打开文件对话框
const char pszFilter[] = _T("EXE File (*.txt)|*.txt|All Files (*.*)|*.*||");
CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
pszFilter, this);

dlg.m_ofn.lpstrInitialDir = "c:\\WINDOWS\\"; //设置对话框默认呈现的路径

if(dlg.DoModal() == IDOK)
{
CString strFilePath = dlg.GetPathName();
/*如果有多个文件,则
for(POSITION pos = dlg.GetStartPosition(); pos!=NULL; )
{
CString strFilePathName = dlg.GetNextPathName(pos);
*/
}

http://www.cppblog.com/zgysx/archive/2006/12/06/16053.html
借花献佛。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hostmanye
2011-01-06 · TA获得超过1057个赞
知道小有建树答主
回答量:511
采纳率:33%
帮助的人:199万
展开全部
LS的方法都可以的。主要是CFileDialog类的功能。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-01-06
展开全部
得法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Danson_W
2011-01-06 · TA获得超过132个赞
知道答主
回答量:176
采纳率:0%
帮助的人:123万
展开全部
CFileDialog
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式