GB与BIG5码转换组件的源代码
你可以去61.134.75.70 / / gb2big5.zip下载下载
原始代码如下所示:
中文名称:GB与BIG5码的外汇管制
英文名:gb2big5
作者:血液
版本:1
生产时间:2002.3.5
版权所有2003血
明确选择
定义变量
昏暗的big5data变异
昏暗的gbdata变异
定义一个自定义类型来处理代码的高和低字问题
chinesetypea型
lochar字节
hichar字节
端式
私人big5type(HA1 HFF,H40 HFE)ChineseTypeA对应的繁体字库
列兵GBType(HA7对HFF,HA1 HFE)作为ChineseTypeA的信件和GB字库
公共职能的开始
功能of'big5转换为GB
功能big5togb(strsource字符串)字符串
暗淡我长,Y一样长
定义的数组,用于存储BIG5和GB码数据
昏暗的btebig5()字节
昏暗的btegb()字节
如果输入为空,则退出该函数。
如果strsource =
= big5togb
退出功能
最后如果
将从Unicode编码为系统默认编码BIG5阵列类型
btebig5 = StrConv(strsource,vbfromunicode)
当然下标BIG5阵列,用于将全部为国标的BIG5循环的内容
Y = UBound(btebig5)
ReDim bteGB(0岁)
对于i = 0到y
如果我
BteGB(我)= btebig5(我)
退出
最后如果
如果btebig5(我)btegb(我)= btebig5(我)
其他的
BteGB(我)= big5type(btebig5(我),btebig5(i + 1))。LoChar
BteGB(i + 1)= big5type(btebig5(我),btebig5(i + 1))。HiChar
i = i + 1
最后如果
下一个我
将系统默认代码转换为unicode编码
big5togb = StrConv(btegb,vbunicode)
重新初始化GB数组以释放内存
擦除btegb
端功能
功能of'gb转换为BIG5
功能gbtobig5(strsource字符串)字符串
暗淡我长,Y一样长
定义的数组,用于存储BIG5和GB码数据
昏暗的btegb()字节
昏暗的btebig5()字节
如果输入为空,则退出该函数。
如果strsource =
= gbtobig5
退出功能
最后如果
将GB数组的类型从Unicode代码转换为系统默认代码
btegb = StrConv(strsource,vbfromunicode)
当然下标GB阵列,用于将全部为国标的BIG5循环的内容
Y = UBound(btegb)
ReDim btebig5(0 Y)
对于i = 0到y
如果我
btebig5(我)= btegb(我)
退出
最后如果
如果btegb(我)btebig5(我)= btegb(我)
其他的
如果btegb(我)= HA1然后
btebig5(我)= GBType(btegb(我)+ 6,btegb(i + 1))。LoChar
btebig5(i + 1)= GBType(btegb(我)+ 6,btegb(i + 1))。HiChar
其他的
btebig5(我)= GBType(btegb(我),btegb(i + 1))。LoChar
btebig5(i + 1)= GBType(btegb(我),btegb(i + 1))。HiChar
最后如果
i = i + 1
最后如果
下一个我
将系统默认代码转换为unicode编码
gbtobig5 = StrConv(btebig5,vbunicode)
重新初始化释放内存的BIG5阵列
擦除btebig5
端功能
公共职能的终结
类初始化
私有子class_initialize()
暗淡我一样长
暗j长
昏暗的艾朗久
从资源文件GB和BIG5字库
gbdata = loadresdata(102,自定义) / /读GB字体
big5data = loadresdata(101,自定义) / /读繁体字体
我= HA1 HFE
J = H40 HFE
big5type(i,j)。lochar = big5data(艾朗)
big5type(i,j)。hichar = big5data(艾朗+ 1)
艾朗=艾朗+ 2
下J
下一个我
艾朗= 0
我= HA7 HFE
J = HA1 HFE
GBType(i,j)。lochar = gbdata(艾朗)
GBType(i,j)。hichar = gbdata(艾朗+ 1)
艾朗=艾朗+ 2
下J
下一个我
端子