如何将一个ASCII码半角字符转换为国标码全角字符? 利用一个流,将你要转换的acii码,以byte的形式写入到该流中,然后用GB2312的编码方式读出即可。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 to robber(海盗): 什么叫ASCII码半角字符、国标码全角字符?解释一下OK? 难道GB2312就是国标码全角字符吗? 不懂,还忘能告知! 8位和16位的区别吧!这主要是一些旧系统上的叫法,比如:在DOS 6.0以前的UCDOS汉字系统有这种叫法,为了表示汉字就将两个ASCII码来表示一个汉字编码的方法!gb2312是双字节码,自然相当于以前的两个ASCII码了!自然能够读出来了!我在以前的解答中有着方面的代码,你可以看看。好像是解决mail汉字乱麻的问题! 喔!我还以为半角和全角有另外的意思呢?原来指的是位数。哈哈!我知道了,谢谢 robber! 海盗老兄:这样子出来的东西是没有乱码,但不符合题意呀。不相信就去看一下GB2312的标准,全角的空格、字符、数字与标准ASCII码的对应编码是不同的,不仅仅是8位与16位的区别,在高8位是有区别的。举例:半角空格ASCII码是0x20,全角空格是 0xA1 0xA1 to luodi(无知者无畏) : 我又胡涂了,全角、半角、GB2312、ASCII究竟有什么区别和联系啊?以前不知道全角、半角 究竟是什么意思?GB2312使用2个字节表示一个汉字。麻烦详细解释一下!拜托! TO:wxyxl(断肠人) 你又不用汇编,搞这么清楚干吗?呵呵。老实说,我也不懂,呵呵。 对于汉字来说没有什么全角半角,统统都是全角,是GB2312的标准。对于标准ASCII中的字母数字及一切可打印字符来说,它们就是所称的半角,是一个字节。但是在GB2312标准中也存在这些可打印字符,但是目的是提供一个打印或屏幕上看上去相同的东西而已。但它与标准ASCII不仅仅是编码位数上(16对8)不同,而且它的后8位与标准ASCII码之间也不是直接相同的。你可以去查一下所谓的区位码,GB2312标准本身并没有直接规定一个汉字或全角字母在机器内怎么表示,现在采用的机器内表示(机内码)是采用区位码的变换格式,具体变换方法是在区位码的区和位上分别加一个数来与标准ASCII区别,具体是什么数我忘记了,不过这样处理后前8位与后位都不会是标准ASCII码了,最高位都会是1。好象一牵涉到汉字的编码,要讲的东西实在太多,先说到这,等想起什么来再补充吧。 to xiaoyou(三尺剑): 你来啦!老兄,知道总比不知道好吧!to luodi(无知者无畏): 讲的太好了,希望在CSDN上多发表几分专题。谢谢! LinkedHashSet的问题 jtds resultset 只获取出查询字段的部分字符 object.this 与 object.class 区别。 请教各位一个小软件的使用方法: 非常问题!!!请高手解答!! java面试题 JAVA命令行如何调用部署在WEBLOGIC中的EJB。 怎样转换日期? 请问被分割成winapi.001,winapi.1xt的两个文件用什么软件合成? swing小问题,急…………,给100分!! 我在其他论坛里找到一篇好文章,我拿过来了,嘿嘿。 Java中的SwingUtilities有什么用啊!
什么叫ASCII码半角字符、国标码全角字符?解释一下OK?
难道GB2312就是国标码全角字符吗?
不懂,还忘能告知!
这主要是一些旧系统上的叫法,比如:在DOS 6.0以前的UCDOS汉字系统有这种叫法,为了表示汉字就将两个ASCII码来表示一个汉字编码的方法!
gb2312是双字节码,自然相当于以前的两个ASCII码了!自然能够读出来了!
我在以前的解答中有着方面的代码,你可以看看。好像是解决mail汉字乱麻的问题!
原来指的是位数。哈哈!我知道了,谢谢 robber!
不相信就去看一下GB2312的标准,全角的空格、字符、数字与标准ASCII码的对应编码是不同的,不仅仅是8位与16位的区别,在高8位是有区别的。
举例:半角空格ASCII码是0x20,全角空格是 0xA1 0xA1
我又胡涂了,全角、半角、GB2312、ASCII究竟有什么区别和联系啊?以前不知道
全角、半角 究竟是什么意思?GB2312使用2个字节表示一个汉字。
麻烦详细解释一下!拜托!
你又不用汇编,搞这么清楚干吗?呵呵。
老实说,我也不懂,呵呵。
对于标准ASCII中的字母数字及一切可打印字符来说,它们就是所称的半角,是一个字节。
但是在GB2312标准中也存在这些可打印字符,但是目的是提供一个打印或屏幕上看上去相同的东西而已。但它与标准ASCII不仅仅是编码位数上(16对8)不同,而且它的后8位与标准ASCII码之间也不是直接相同的。
你可以去查一下所谓的区位码,GB2312标准本身并没有直接规定一个汉字或全角字母在机器内怎么表示,现在采用的机器内表示(机内码)是采用区位码的变换格式,具体变换方法是在区位码的区和位上分别加一个数来与标准ASCII区别,具体是什么数我忘记了,不过这样处理后前8位与后位都不会是标准ASCII码了,最高位都会是1。
好象一牵涉到汉字的编码,要讲的东西实在太多,先说到这,等想起什么来再补充吧。
你来啦!老兄,知道总比不知道好吧!
to luodi(无知者无畏):
讲的太好了,希望在CSDN上多发表几分专题。谢谢!