我有一个可以翻译成多种语言的 MFC 应用程序,我想使用以下字符:
破折号(—;Windows:Alt+0151;Unicode:\u2014)
破折号(–;Windows:Alt+0150;Unicode:\u2013)
对于以下语言,一切顺利:
en_GB.rc: #pragma code_page(1252)
pt_PT.rc: #pragma code_page(1252)
但它失败了:
ja-JP.rc: #pragma code_page(932)
ko-KR.rc: #pragma code_page(949)
zh_CHS.rc: #pragma code_page(936)
我看到奇怪的字符。而且,在字符串只有破折号的情况下,它甚至不能用 CJK 语言编译。
是的,我知道可以使用这些字符创建字符串,例如
CString s= _T("\u2014");
但这破坏了拥有单独资源文件的目的,并且当破折号位于文本中间时不方便。
而且,如果我做类似更换的事情
IDS_HELLO_SHE_SAID_HOW_ARE_YOU " — Hello! — she said — How are you?"
和
IDS_HELLO_SHE_SAID_HOW_ARE_YOU " \u2014 Hello! \u2014 she said \u2014 How are you?"
我将在界面中(逐字)看到 \u2014,即使在支持破折号字符的语言中也是如此。所以,问题是:有没有一种方法可以直接将 em-dashes 和 en-dashes 放入使用那些中文、日文和韩文代码页的 .rc 文件中?
在此先感谢,塞尔吉奥