2 qq 28254507 qq_28254507 于 2016.02.28 10:18 提问

MFC 读取文本内容的问题
 void EditView::ReadTitle(CString strName)
{
    CString content="";
    CStdioFile file;
    CString fileName = strName;
    if (file.Open(fileName, CFile::modeRead | CFile::typeText))
    {
        file.SeekToBegin();
        CString str;
        int len = 512 - 2;
        file.ReadString(str); // A null character ('\0') is appended.

        if ("" != str)
            content += str;

        file.Close();
    }
    else
        AfxMessageBox("读取失败!");
    this->SetWindowText(content);
}

strName是路径,调试是正确的,而且file.Open()也成功了。
就是读取内容ReadString(str)时,str显示字符串中的字符无效。
不知是哪里的问题。。

4个回答

qq_28254507
qq_28254507   2016.03.02 12:28
已采纳

这里问题已经找到了。这里是

 content += str;

时OnEnChange()函数被调用了,里面有writein函数

caozhy
caozhy   Ds   Rxr 2016.02.28 10:51

str显示字符串中的字符无效
具体的错误是什么?没有正确设置\0,还是有乱码?

qq_28254507
qq_28254507   2016.02.28 13:33

比如我文本中是ssss,读取了显示就一个是字,类似乱码那种

qq_28254507
qq_28254507 现在又不是正常的了。。是乱码那种
接近 2 年之前 回复
qq_28254507
qq_28254507 正常的
接近 2 年之前 回复
caozhy
caozhy 记事本打开正常的么
接近 2 年之前 回复
wangyaninglm
wangyaninglm   Ds   Rxr 2016.02.28 15:37

你这个len变量是干啥的,没见你有用到啊

qq_28254507
qq_28254507 之前有用到,后来改了的。。
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!