请问MFC如何通过按钮控件读取文件并将文件内容写入编辑框中

我现在的代码是:voidCzs_DESDlg::OnBnClickedButton4(){//TODO:在此添加控件通知处理程序代码CFileDialogfileDlg(... 我现在的代码是:
void Czs_DESDlg::OnBnClickedButton4()
{
// TODO: 在此添加控件通知处理程序代码
CFileDialog fileDlg(TRUE);
if(fileDlg.DoModal() == IDOK)
{
CString str;
CFile f;
f.Open(fileDlg.GetFileName(),CFile::modeReadWrite);
f.Read(str.GetBuffer(f.GetLength()),f.GetLength());
f.Close();
GetDlgItem( IDC_EDIT1 )->SetWindowText( str);
}
}
但是编译运行后总是出现找不到文件(图2)
开始考虑过是路径中有中文的问题,后来试了其他的也没法打开
求大佬告知
展开
 我来答
匿名用户
2019-04-22
展开全部
    CStdioFile f;
if (f.Open("文件绝对路径", CFile::modeRead | CFile::typeText))
{
CString s, str=_T("");
setlocale(LC_CTYPE, "chs");
while (f.ReadString(s))
{
str=str+s+_T("\r\n")
}
f.Close();
}
SetDlgItemTextW(IDC_EDIT1,str);
追问
请问setlocale和LC_CTYPE是什么意思,我用的是VS2010,它会报错
追答
#include 
设置地域为中文, 不然有时读取汉字时会乱码
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式