Nutkey 2022-08-30 11:10 采纳率: 25%
浏览 38
已结题

用WriteString写入文本文件TXT

在MFC中,如何将Unicode的CString中文字符用WriteString写入文本文件TXT中
相关代码如下:
void CMFCApplication1Dlg::OnBnClickedButtonSave()
{
    // TODO: 在此添加控件通知处理程序代码
    CFileDialog fDlg(FALSE,L".txt",L"save",OFN_OVERWRITEPROMPT,L"文本文档(*.txt)|*.txt|保存的数据(*.dat)|*.dat|所有文件(*.*)|*.*||",NULL);

    if (fDlg.DoModal()==IDOK)
    {
        CString sPath = fDlg.GetPathName();
        //MessageBox(sPath);
        //创建文件对象
        CStdioFile file(sPath,CFile::modeWrite|CFile::modeCreate);
        CString cs;
        
        GetDlgItemText(IDC_EDIT1,cs);
        //MessageBox(cs);

        //TCHAR* p = cs.getBuffer(cs.getLength());
        //TCHAR* p = (LPTSTR)(LPCTSTR)cs;

        //MessageBox(cs);

        //写入操作
        file.WriteString(cs);
        //file.Write(cs,8);

        file.Close();
    }
}
运行结果及报错内容

.txt文件中可以显示英文,但是不能显示中文!

我想要达到的结果

想要什么格式都可以显示!

  • 写回答

4条回答 默认 最新

  • 快乐鹦鹉 2022-08-30 11:15
    关注

    文本文件用Unicode格式打开

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月30日
  • 创建了问题 8月30日