【问题标题】:How can I get Chinese string?我怎样才能得到中文字符串?
【发布时间】:2012-08-17 05:05:12
【问题描述】:

我想把它转换成中文。

我使用了 MFC 对话框。


\u5DF4\u62C9\u9547

\u73FE\u4EE3\u57CE


我该怎么办?请帮帮我。

【问题讨论】:

  • 这些字符是 UTF-8 编码的吗? UTF-16? UTF-32?
  • 如果它们是 UTF-32 但您将 CP_UTF8 作为第一个参数传递,那么它可能无法按预期工作。
  • 你想要什么?在屏幕上打印中文文本还是在文件中输出?
  • 这个问题是“Unicode Hex to wchar*”
  • 我在谷歌上搜索了一些文章,但对我没有帮助。

标签: c++ visual-studio mfc dialog


【解决方案1】:

MFC 本身支持 Unicode,使用 UTF-16。您的字符都在 BMP 中,因此代理字符没有问题。您可以将文字字符串 L"\u5DF4\u62C9\u9547\u73FE\u4EE3\u57CE" 传递给 MFC。当然,在构建中文应用程序时,不要使用 MFC 的 ANSI 函数。

【讨论】:

    【解决方案2】:
     // declare unicode text in hex code 
     LPCWSTR pszText = (LPCWSTR)"\xF4\x5D\xC9\x62\x47\x95\xFE\x73\xE3\x4E\xCE\x57";
    
     // display unicode in UNICODE build dialog
     SetDlgItemText(IDC_EDIT1, pszText);
    
     // display unicode text in in MCBS build dialog
     SetDlgItemTextW(this->m_hWnd, IDC_EDIT1, pszText);
    

    【讨论】:

      猜你喜欢
      • 2020-11-22
      • 1970-01-01
      • 2018-05-17
      • 2016-10-16
      • 1970-01-01
      • 2022-10-13
      • 2021-12-14
      • 1970-01-01
      • 2014-12-14
      相关资源
      最近更新 更多