怎么使用CFile打开一个文件

怎么使用CFile打开一个文件,第1张

CFileDialog cFileDlg(TRUE, _T( "txt "),(LPCTSTR)NULL,

OFN_ENABLESIZING|OFN_EXPLORER|OFN_PATHMUSTEXIST|OFN_LONGNAMES|

OFN_OVERWRITEPROMPT|OFN_PATHMUSTEXIST|OFN_CREATEPROMPT,

_T( "Text Files (*.txt)|*.txt|All Files (*.*)|*.*| "),this)

//获得要打开的文件

if(cFileDlg.DoModal()!=IDOK)

{

return

}

//定义文件对象唯手,并只读打开指定文件

CFile file(cFileDlg.GetPathName(),CFile::modeRead/*|CFile::modeWrite*/)

//准备文件大小搏搭的缓冲区

CString strTxt

char *pBuf=strTxt.GetBuffer(file.GetLength())

//读入整个文件

file.Read(pBuf,file.GetLength())

strTxt.ReleaseBuffer(file.GetLength())

//基山拿将文件内容设置到某编辑框。

m_MyEdit.SetWindowText(strTxt)

GetDlgItem(IDC_EDIT_CONTENT)->EnableWindow(TRUE)

m_FlagHistory = FALSE

读取txt还是fopen用得方便,至于与CString的沟通,可以这样做:

包含头文件<tchar.h>

将fopen改为_tfopen,具体敬猜这样写

_tfopen(str/*CString类型的对象,不需要显式强制转换*/ ,_T("rt")/*注意这个_T*/)

然后接下来就能进行文件的读写了

然后建议楼主查阅一下 char和裤稿虚wchar_t两种字符类型,标准库对不同字符类型的支持,CString的类型自动切换等等的相关资料,就明白这样写的道理胡燃了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8189642.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存