简单的问题
用一个Edit来接收文件,Edit用m_editSource来表示,
用一个数组bufSource[256]来读文件
CFile fp(string,CFile::modeRead);   
fp.Read(bufSource,sizeof(bufSource));
fp.Close();
m_editSource=bufSource;
Edit 显示文件的信息没错,但到了最好一行出现了烫烫烫烫烫烫烫的符号,估计是读到文件的末尾为空时所致,我怎样才能把消除这些乱码。(是不是数组不行,一定要文件指针)

解决方案 »

  1.   

    如果m_editSource是CString,不如这样:int nSize=256;
    char * pBuffer=m_editSource.GetBuffer(nSize);
    CFile fp(string,CFile::modeRead);   
    UINT nRead=fp.Read(pBuffer,nSize);
    fp.Close();
    m_editSource.ReleaseBuffer(nRead);
      

  2.   

    用一个数组bufSource[256]来读文件memset(bufSource,0,256) //加一句!!CFile fp(string,CFile::modeRead);   
    fp.Read(bufSource,sizeof(bufSource));
    fp.Close();
    m_editSource=bufSource;
      

  3.   

    这么写也不对。万一读出来256个字符呢,你就白memset了。
    不理解为什么不用CStdioFile。