Microsoft Applocale的原理是什么?因为程序要给老外(大部份是华侨)用,他们的操作系统大部份是英文或繁体的,我们的数据文件里的是中文,在英文系统下显示是乱码的,所以想实现Microsoft Applocale之类的功能...麻烦各位大大帮个忙指点下,谢谢

解决方案 »

  1.   

    直接使用Unicode工程项目,数据库里也保存中文,然后就OK了。
      

  2.   

    上面打错字了:数据库里中文也保存Unicode-16格式。
      

  3.   


    但数据文件不能用UNICODE保存,文件是硬件设备要读的,所以我不能决定文件类型.
      

  4.   

    ……,用冗余数据来保证,或者试着调整MultiByteToWideChar的CodePage参数看看能不能在其他语言环境下正确将中文CodePage的mbs转到unicode
      

  5.   

    也想过用转UNICODE这个方法,但如果表里面又有英文又有中文,那转换的时候不是要一个一个去判断他是不是中文再转?好像会很慢的样子...
      

  6.   

    1. 确定数据文件编码格式再根据当前系统转成UNICODE再显示。
    2. 给个菜单之类的选项让用户自己选定编码,再根据这个编码转成UNICODE再显示。因为JIS,GB之类的编码实际是不好分辨的(同一个数比如0xABCD,在GB里表示成一个字符,在JIS里表示成另一个字符),但这些跟ASCII(英文)是不冲突的。所以如果仅仅是中文英文很简单,都当GB处理就OK了,如果还要判断是不是其他编码就麻烦了,比较NB的是用统计方法来猜(很多浏览器里自动识别编码就这么搞),再就是数据文件里可以带一些编码信息,比如HTML、XML里都可以再前面的格式里说明后面的编码格式,TXT(包括所有文本格式的文件)一般是用BOM来说明编码格式。