请问哪里能找到big5<=>gb比较好的库 还有一个问题,就是有没有什么库中带有处理HZ码,base64码和QP码的库据说有这样的库可以直接调用,请教。。多谢:) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://www.delphibbs.com/delphibbs/dispq.asp?lid=830185 对于big5转GB来讲一般有两种,一种就是GBK简体,亦即GB2312,另一种就是GBK繁体而GB转BIG5则使用GBK简繁体。对于Win2K以上系统相对来说有一种比较简单的方法GB转BIG5:LCMapString(0x0804,LCMAP_TRADITIONAL_CHINESE,...);//先将所有GB码转成GBK繁体MultByteToWideChar(936,...)//将GB码转成Unicode,WideCharToMultByte(950,...)//再将转换后的Unicode转换成BIG5BIG5转GBK繁体:MultByteToWideChar(950,...)//先将BIG5码转成Unicode,WideCharToMultByte(936,...)//再将转换后的Unicode转换成GBK繁体LCMapString(0x0804,LCMAP_SIMPLIFIED_CHINESE,...)//GBK繁体映射成GBK简体 楼上的这个方法只能说能解决一大部分问题,有些时候是不行的之所以会有查表的方式或者windows的方式进行转换的方法,是因为你所述的这个办法有问题. 只有那些在简体和繁体字中笔画都是一样的字才能正确转换.例如,中国的国字就不能,但是中字能.我还是想找比较好的库 请问三楼的函数用delphi怎么写? http://oldsite.linuxaid.com.cn/support/showfom.jsp?i=1408汉字编码标准与识别(三)null 01-04-24 13:14 4218p null-------------------------------------------------------------------------------- 汉字编码标准与识别(三) 内码转换表的来源与制作 由于历史和地域的原因,电脑里的中文标准有不少种共存于Internet 中。这是现实。因此出现了内码转换。这方面的程序现在有不少。不 过大多是MS Windows的版本,并且有的毛病不少,所以有必要制作一 个完整些的内码转换表。 资料来源 自从Unicode/ISO10646/GB13000标准出现后,这项工作变得简单和繁 琐。因此制作转换表时有一个准则:以国际和国家标准为基准,参考 有影响的商业公司的转换表,个人和小软件次之。下面是资料的来源: 一)国际和国家标准组织 国际标准组织Unicode(http://www.unicode.org)提供了 GB<=>Unicode转换表: ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/GB BIG5<=>Unicode转换表: ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/OTHER JIS<=>Unicode转换表: ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/JIS KSC<=>Unicode转换表: ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/KSC 因为GBK不是国家标准,所以Unicode并没有提供GBK<=>Unicode的转换 表,而只是采用了Microsoft的code page的一个版本: ftp://ftp.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/ WINDOWS/CP{936,950}.TXT 中国国家标准网入门太难,须8000元/个人。因此没有得到正式的 GB2312-1980和GB13000-1993的标准。 二)商业公司 2.1方正集团字体部 http://www.founderpku.com/fontweb/ 因为方正是产,学,研的综合体,在排版和字体领域奋斗多年,有很 特殊的地位。他们提供的转换表,几乎可以等同国家标准。 GB2312标准: http://www.founderpku.com/fontweb/gb2312.htm GBK标准: http://www.founderpku.com/fontweb/gbk.htm GB<=>BIG5转换表: http://www.founderpku.com/fontweb/download/Gb-big5.tab GBK<=>BIG5转换表: http://www.founderpku.com/fontweb/download/Gbk-big5.tab 2.2Microsoft http://www.microsoft.com/ Microsoft是谁也忽略不了的。有时候就算是他们错了,最后也是对 的。在有些英文资料里把GBK说成是Microsoft制订的。Microsoft从 商业角度出发,提供的是code pages: GBK字形表: http://www.microsoft.com/typography/unicode/936gif.zip GBK<=>Unicode转换表: http://www.microsoft.com/typography/unicode/936.txt BIG5字形表: http://www.microsoft.com/typography/unicode/950gif.zip BIG5<=>Unicode转换表: http://www.microsoft.com/typography/unicode/950.txt 在Windows97/98中文版里也提供了些资料: GBK标准:windowsGBK.txt code pages:windowssystemcp{932,936,949,950}.nls 三)个人与共享软件 有不少个人和小团体也在这方面进行了探索。 3.1 TextPro http://person.zj.cninfo.net/~buddha 因为他们特殊的需求,TextPro确实在BIG5=>GBK/GB转换方面有独到之 处。同时还有个GBK(繁体)=>GB(简体)转换表,很有特色。因为繁体=> 简体是多对一的映射,因此很难有简体=>繁体的转换表。特别是基于字 到字的映射的转换是不可能的。目前已有人进行基于词典和上下文的词 到词的映射。有兴趣可以看 http://www.basistech.com/articles/c2c.html 3.2 Stone Chi http://stonec.yeah.net 提供了基于RichWin的内码转换表。收集了不少的资料,对内码标准 有较深的了解。同时还有一个中文检索软件值得一尝。 3.3 NJStar http://www.njstar.com 和 MagicWin http://www.magicwin.com.my 他们在这领域有些日子了。不过转换表不是很全。 制作 根据上面的准则和排列次序制作。如果上一级有空白,就要下一级填 补;如果有冲突,就以上一级的为准。 一)根据Unicode的GB<=>Unicode与BIG5<=>Unicode转换表制作GB<=>BIG5 转换表。 二)根据Microsoft的GBK<=>Unicode与BIG5<=>Unicode转换表制作 GBK<=>BIG5转换表。 至此,基于标准的转换实际已经完成。Unicode的特点就是一字一码,一 码一字。各个国家和地区的汉字标准已编入Unicode的,并有相同的Unicode 码的汉字,就是叫CJK认同汉字。但有些汉字因为种种原因而未能得到认 同,如果制作这些汉字的转换表,只能是基于实用的,有可能多对多映射 的转换表。 三)使用方正的GBK<=>BIG5转换表填充(一)的GB<=>BIG5转换表。 四)使用Microsoft的GBK<=>BIG5转换表填充(三)的GBK<=>BIG5转换表。 五)使用TextPro和stonec的GBK<=>BIG5转换表填充(四)的GBK<=>BIG5转 换表。 六)NJStar的转换表虽然不是很全,但在BIG5=>GBK转换表中的C6行后半 段和C7,C8行却相当完整。上面的转换表在这里不是空白就是很少转换。 可能这个区域是属于扩充符号 区,可有可无。为保险起见,使用NJStar填充这个区域。 七)校验。通过电脑对码表进行校验,发现在汉字编码方面基本一致。 有冲突的地方基本上是对制表符的理解不同造成的。 八)目测校验。也就是用肉眼一个字一个字的检查。这是最重要的一步。 但因为学识和精力有限,未能做到这一步。 关于消息的捕捉的疑问 D6连接MySql故障 求加密解密的方法! 问个比较基础的问题,谢谢大家!!! 兄弟们! 怎样才能做出 仿真数字 LED 显示 的效果?急呀..... 如何限制一个edit中只能输入数字或只能输入英文,在线等…… 有关MIDAS的基础 下拉框控件 关于随机抽取题库的问题,高手请进,有答必给分,不够再加! 如何在Delphi使用GETMESSAGE()函数,马上给分 模态窗口的free问题,谢了! Access中存取BMP格式图片的问题
而GB转BIG5则使用GBK简繁体。
对于Win2K以上系统相对来说有一种比较简单的方法
GB转BIG5:
LCMapString(0x0804,LCMAP_TRADITIONAL_CHINESE,...);//先将所有GB码转成GBK繁体
MultByteToWideChar(936,...)//将GB码转成Unicode,
WideCharToMultByte(950,...)//再将转换后的Unicode转换成BIG5
BIG5转GBK繁体:
MultByteToWideChar(950,...)//先将BIG5码转成Unicode,
WideCharToMultByte(936,...)//再将转换后的Unicode转换成GBK繁体LCMapString(0x0804,LCMAP_SIMPLIFIED_CHINESE,...)//GBK繁体映射成GBK简体
之所以会有查表的方式或者windows的方式进行转换的方法,是因为你所述的这个办法有问题.
只有那些在简体和繁体字中笔画都是一样的字才能正确转换.例如,中国的国字就不能,但是中字能.
我还是想找比较好的库
--------------------------------------------------------------------------------
汉字编码标准与识别(三)
内码转换表的来源与制作
由于历史和地域的原因,电脑里的中文标准有不少种共存于Internet
中。这是现实。因此出现了内码转换。这方面的程序现在有不少。不
过大多是MS Windows的版本,并且有的毛病不少,所以有必要制作一
个完整些的内码转换表。
资料来源
自从Unicode/ISO10646/GB13000标准出现后,这项工作变得简单和繁
琐。因此制作转换表时有一个准则:以国际和国家标准为基准,参考
有影响的商业公司的转换表,个人和小软件次之。下面是资料的来源:
一)国际和国家标准组织
国际标准组织Unicode(http://www.unicode.org)提供了
GB<=>Unicode转换表:
ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/GB
BIG5<=>Unicode转换表:
ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/OTHER
JIS<=>Unicode转换表:
ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/JIS
KSC<=>Unicode转换表:
ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/KSC
因为GBK不是国家标准,所以Unicode并没有提供GBK<=>Unicode的转换
表,而只是采用了Microsoft的code page的一个版本:
ftp://ftp.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/
WINDOWS/CP{936,950}.TXT
中国国家标准网入门太难,须8000元/个人。因此没有得到正式的
GB2312-1980和GB13000-1993的标准。
二)商业公司
2.1方正集团字体部
http://www.founderpku.com/fontweb/
因为方正是产,学,研的综合体,在排版和字体领域奋斗多年,有很
特殊的地位。他们提供的转换表,几乎可以等同国家标准。
GB2312标准:
http://www.founderpku.com/fontweb/gb2312.htm
GBK标准:
http://www.founderpku.com/fontweb/gbk.htm
GB<=>BIG5转换表:
http://www.founderpku.com/fontweb/download/Gb-big5.tab
GBK<=>BIG5转换表:
http://www.founderpku.com/fontweb/download/Gbk-big5.tab
2.2Microsoft
http://www.microsoft.com/
Microsoft是谁也忽略不了的。有时候就算是他们错了,最后也是对
的。在有些英文资料里把GBK说成是Microsoft制订的。Microsoft从
商业角度出发,提供的是code pages:
GBK字形表:
http://www.microsoft.com/typography/unicode/936gif.zip
GBK<=>Unicode转换表:
http://www.microsoft.com/typography/unicode/936.txt
BIG5字形表:
http://www.microsoft.com/typography/unicode/950gif.zip
BIG5<=>Unicode转换表:
http://www.microsoft.com/typography/unicode/950.txt
在Windows97/98中文版里也提供了些资料:
GBK标准:windowsGBK.txt
code pages:windowssystemcp{932,936,949,950}.nls
三)个人与共享软件
有不少个人和小团体也在这方面进行了探索。
3.1 TextPro http://person.zj.cninfo.net/~buddha
因为他们特殊的需求,TextPro确实在BIG5=>GBK/GB转换方面有独到之
处。同时还有个GBK(繁体)=>GB(简体)转换表,很有特色。因为繁体=>
简体是多对一的映射,因此很难有简体=>繁体的转换表。特别是基于字
到字的映射的转换是不可能的。目前已有人进行基于词典和上下文的词
到词的映射。有兴趣可以看
http://www.basistech.com/articles/c2c.html
3.2 Stone Chi http://stonec.yeah.net
提供了基于RichWin的内码转换表。收集了不少的资料,对内码标准
有较深的了解。同时还有一个中文检索软件值得一尝。
3.3 NJStar http://www.njstar.com 和
MagicWin http://www.magicwin.com.my
他们在这领域有些日子了。不过转换表不是很全。
制作
根据上面的准则和排列次序制作。如果上一级有空白,就要下一级填
补;如果有冲突,就以上一级的为准。
一)根据Unicode的GB<=>Unicode与BIG5<=>Unicode转换表制作GB<=>BIG5
转换表。
二)根据Microsoft的GBK<=>Unicode与BIG5<=>Unicode转换表制作
GBK<=>BIG5转换表。
至此,基于标准的转换实际已经完成。Unicode的特点就是一字一码,一
码一字。各个国家和地区的汉字标准已编入Unicode的,并有相同的Unicode
码的汉字,就是叫CJK认同汉字。但有些汉字因为种种原因而未能得到认
同,如果制作这些汉字的转换表,只能是基于实用的,有可能多对多映射
的转换表。
三)使用方正的GBK<=>BIG5转换表填充(一)的GB<=>BIG5转换表。
四)使用Microsoft的GBK<=>BIG5转换表填充(三)的GBK<=>BIG5转换表。
五)使用TextPro和stonec的GBK<=>BIG5转换表填充(四)的GBK<=>BIG5转
换表。
六)NJStar的转换表虽然不是很全,但在BIG5=>GBK转换表中的C6行后半
段和C7,C8行却相当完整。上面的转换表在这里不是空白就是很少转换。 可能这个区域是属于扩充符号
区,可有可无。为保险起见,使用NJStar填充这个区域。
七)校验。通过电脑对码表进行校验,发现在汉字编码方面基本一致。
有冲突的地方基本上是对制表符的理解不同造成的。
八)目测校验。也就是用肉眼一个字一个字的检查。这是最重要的一步。
但因为学识和精力有限,未能做到这一步。