CodePage的相关使用

最近的一个项目中用到了多语言,从文本中读取为string类型,然后用MultiByteToWideChar转换为CString再显示到界面上,问题就在于MultiByteToWideChar的第一个参数是Codepage值(页代码),不同语言的该值都不同。我解决的办法是多方查资料,然后有的语言几乎要把所有可能的值都试一遍才知道该用什么值,现将项目中用到的10种语言的Codepage值列出如下:

英语:CP_ACP / 0

法语:1252

西班牙语:1252

德语:28591

波兰语:1250

葡萄牙语:28591

瑞典语:1252

意大利语:1252

荷兰语:1252

匈牙利语:1252



另,此项目的语言设置中要求各语种串用原始的语言显示,实现如下:

        英语:m_listLanguage.AddString(_T("English"),0,20);//English

        法语:m_listLanguage.AddString(_T("\x46\x72\x61\x6E\xE7\x61\x69\x73"),0,20);//Francais

西班牙语:m_listLanguage.AddString(_T("\x45\x73\x70\x61\xF1\x6F\x6C"),0,20);//Espanol

        德语:m_listLanguage.AddString(_T("Deutsch"),0,20);//Deutsch

    波兰语:m_listLanguage.AddString(_T("Polski"),0,20);//Polski

葡萄牙语:m_listLanguage.AddString(_T("\x50\x6F\x72\x74\x75\x67\x75\xEA\x73"),0,20);//Portugues

    瑞典语:m_listLanguage.AddString(_T("Svenska"),0,20);//Svenska

意大利语:m_listLanguage.AddString(_T("Italiano"),0,20);//Italiano

    荷兰语:m_listLanguage.AddString(_T("Nederlands"),0,20);//Nederlands

匈牙利语:m_listLanguage.AddString(_T("Magyar"),0,20);//Magyar


以作纪念,免得用时无处可寻



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值