编码转换模块,无需依赖系统Api

易语言 2020-04-07 17:33:25

编码转换模块,无需依赖系统Api

GBK编码:1-2个字节,包含GB2312、ASCII、BIG5,注意:同一个繁体字在GBK和BIG5中的编码是各不相同的。
GB18030编码:1字节、2字节、4字节,兼容GBK。
UNICODE是国际统一编码,UCS-2标准:2字节,UCS-4标准:4字节。
UTF-8是对UNICODE的再次编码,UCS-2标准:1-3字节,UCS-4标准:1-6字节。
BIG5编码:2字节,繁体中文,主要在台湾、香港、澳门等地普及,属于业界标准而非官方标准。
==============================================================================
比用Api“MultiByteToWideChar、WideCharToMultiByte”的有两个好处
。1,Api的可能造成程序崩溃(相信很多人都遇到过),使用过多个易语言界大佬的编码转换都会出现这个情况,而我这个模块就不会。2,Api的如果大家使用代码页936进行转换,很多GBK字符不受支持,因为代码页936表示的是简体中文(MSDN解释:GB2312,ANSI / OEM简体中文(中国,新加坡);简体中文(GB2312)),GB2312只有几千个字符,相比GBK少了一万多个字符。
所以你不必担心转换的字符会少,我可以负责任的说只会比你用上面两个api支持的字符多,不会少。至于转换速度也并不会慢,我的查表是直接定位位置,没有查找过程,速度不会慢。下一次更新准备添加支持BIG5编码转换。