CStdioFile file;          CString str;  
CString comment ="c:\\a.txt";
CList<CString CString&> a;
a.AddTail("中国");        file.Open(comment,CFile::modeCreate | CFile::modeWrite);        POSITION pos = a.GetHeadPosition();        while(pos)        {          str = a.GetNext(pos);          file.WriteString(str);                     file.WriteString(_T("\r\n"));         }        file.Close();  我的文件生成之后都是乱码

解决方案 »

  1.   

    看程序有可能是ansi与utf16混用了。
      

  2.   

    //这样不生乱码
    CStdioFile file;  
    CString str="中国";  
    CString comment ="d:\\a.txt"; 
            file.Open(comment,CFile::modeCreate | CFile::modeWrite); 
            file.WriteString(str);  
            file.WriteString(_T("\r\n")); 
        file.Close();  
      

  3.   

    直接用char类型写入就是了,比如
    char buff[1024];
    strcpy(buff, _T("实际字符");
    file.Write(buff, strlen(buff));