无法使用CString加载中文字符

时间:2016-06-02 06:34:22

标签: c++ mfc

我使用CString从MFC应用程序中的String Table加载资源,但它不加载任何中文或日文字符(它显示??而不是中文字符。)

代码段

CString m_resoucestring(MAKEINTRESOURCE(ID));

2 个答案:

答案 0 :(得分:0)

项目设置中将项目切换为 UNICODE字符集。之后,CString将自动成为CStringW,完全符合UNICODE标准。在MBCS模式下,CString被定义为CStringA,它仅支持ANSI编码。

答案 1 :(得分:0)

  • 如果您不能(或不想)依赖项目设置,请明确使用CStringW
  • 您提到无法显示 - 这是什么意思?你是如何展示它的? TextOutSetWindowText
  • 检查调试器是否有字符串对象坏了,还是只是显示它的方式?
  • 确保使用正确的编码保存资源文件。