MFC - CStdioFile 读取txt文件UNICODE 中文异常

Posted 勿在浮沙筑高台

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC - CStdioFile 读取txt文件UNICODE 中文异常相关的知识,希望对你有一定的参考价值。

/**********************************
/*
/* #include <locale.h>
/*
/**********************************
// 获取txt文件的全路径
        CString strConfigIniPath = fileDlg.GetPathName();

        CStdioFile fileAccount;
        if (fileAccount.Open(strConfigIniPath, CFile::typeText | CFile::modeRead))
        {
            CString strValue(_T("\0"));

            // 处理UNICODE下【中文乱码】异常
            char * pOldLocale = _strdup(setlocale(LC_CTYPE, NULL));
            setlocale(LC_CTYPE, "chs");

            while (fileAccount.ReadString(strValue))
            {
                strVecAccount.push_back(strValue);
                strValue.Empty();
            }

            // 处理完毕后,释放资源
            setlocale(LC_CTYPE, pOldLocale);
            free(pOldLocale);

        }

        fileAccount.Close();

 

以上是关于MFC - CStdioFile 读取txt文件UNICODE 中文异常的主要内容,如果未能解决你的问题,请参考以下文章

如何在MFC中读取txt文件中的数据

MFC文件的读写操作,类的序列化与反序列化,CFile,CFileDialog,CArchive,CStdioFile

mfc如何用txt保存下拉框控件的内容?下拉框如何读入TXT中的内容到属性-数据中?

通过shell循环逐行读取两个txt文件,将两个不同文建内容拼成一个新文件txt

如何使用 CStdioFile 读取文本文件的最后 10 行

MFC如何读取TXT文件?