除UTF-16 LE以外,Windows只支持SBCS单字节编码(如437代码页)和DBCS双字节编码(如GBK、Big5)的字符串算法。Windows不提供MBCS多字节编码(如GB18030和UTF-8)和Esc序列编码(即ISO-2022或HZ编码格式)的字符串算法。对于MBCS多字节编码和Esc序列编码,Windows视作单字节编码处理。
中文用户日常能用到的编码和代码页如下:
Unicode等价编码:
54936(GB18030)以GBK为基础的Unicode传输形式(实际上就是UTF-GBK)
65000(UTF-7)以+和-分隔ASCII和特殊Base64的Unicode传输形式,纯ASCII
65001(UTF-8)以ASCII为基础的Unicode传输形式
老式ANSI编码:
936(GBK)简体中文Windows的默认编码(Win98默认编码,最常见)
950(Big5)繁体中文Windows的默认编码(Win98默认编码,最常见)
20000(CNS)以EUC编码的繁体中文CNS编码
20002(Eten)以EUC编码的繁体中文倚天码
20936(GB2312-80)以EUC编码的简体中文GB2312编码(老设备或嵌入式设备常见)
50227(ISO-2022-GB)简体中文的Esc序列编码,纯ASCII
50229(ISO-2022-CNS)繁体中文的Esc序列编码,纯ASCII
52936(HZ-GB-2312)以~{和~}分隔的简体中文GB2312编码,纯ASCII