Français, Español在编译器vs2008中不能正常显示,而显示成Fran?ais,Espa?ol,但要用他们来作判断比较,先要转换成unicode,转换如下:
wchar_t szFrench[64]={L'F',L'r',L'a',L'n',0xE7, L'a',L'i',L's', 0};
wchar_t szSpanish[64]={L'E',L's',L'p',L'a',0xF1 ,L'o',L'l', 0};
wchar_t szJP[128]={0x65E5,0x672C,0x8A9E, 0}; //日本語
wchar_t szCN[128]={0x4E2D,0x6587,0x28,0x7B80,0x4F53, 0x29,0}; 中文(简体)
wchar_t szTW[128]={0x4E2D,0x6587,0x28,0x7E41,0x9AD4, 0x29,0}; //中文(繁體)
CString lang = GetString(_T("language"))
if (!lang.CompareNoCase(CString(_T("Deutsch"))))
nPrefLangID = LANG_DE;
else if (!lang.CompareNoCase(szSpanish))
nPrefLangID = LANG_ES;
else if (!lang.CompareNoCase(szFrench))
nPrefLangID = LANG_FR;
else if (!lang.CompareNoCase(szTW))
nPrefLangID = LANG_TW;
end
这样就不会存在不匹配现象了
查询特殊字符
阅读(1411) | 评论(0) | 转发(0) |