js对中文进行gb2312/gbk编码解码

JavaScript使用的是Unicode编码,使用内置的encodeURIComponent,encodeURI,escape都是编码为Unicode的url编码,如果传递这些编码到gb2312或者gbk编码的页面就会乱码。

下面是用js中实现GBK/gb2312编码。适合使用js进行页面参数传递时,给GBK/gb2312编码页面传递参数,解决乱码。

点击下载:js对中文进行gb2312/gbk编码类库

下载上面的压缩文件解压得到gbk.js文件,倒入gbk.js类库,调用$URL.encode将内容编码为gb2312字符串,调用decode解码gb2312 url编码为对应内容。

<script type="text/javascript" src="/demo/gbk.js"></script>
<script>
var s='%D6%D0%B9%FA';//中国的gb312编码
alert(s);
s=$URL.decode(s);
alert(s);
s=$URL.encode(s);
alert(s);
</script>
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: GB2312编码GBK编码都是中文字符编码方式,用于将中文字符存储到计算机中。 GB2312编码是中国国家标准,于1980年发布,包含了6763个汉字和682个非汉字字符,是最早的中文字符编码方式之一。 GBK编码GB2312编码的扩展,于1995年发布,包含了21003个汉字和882个非汉字字符,是目前最常用的中文字符编码方式之一。 无论是GB2312编码还是GBK编码,都是通过将中文字符映射成二进制编码来实现存储。在计算机中,每个字符都有一个对应的二进制编码,这些编码可以被计算机识别和处理。 ### 回答2: GB2312编码GBK编码中文字符编码的两种形式。 GB2312编码是中国官方最早的中文字符编码方式,于1980年发布,能够表示6763个汉字和682个非汉字字符。这种编码方式分别使用了两个字节来编码中文字符,其中第一个字节在0xB0—0xF7范围内,第二个字节在0xA1—0xFE范围内。但是GB2312编码无法满足所有汉字的表示,因此在1995年发布的GBK编码中对GB2312进行了扩充。 GBK编码是国家标准GB2312的扩充版,能够表示21003个中文汉字和图形符号,其中包括了GB2312所没有的汉字和生僻字,这也是GBK编码能够很好地满足中文输入、显示、存储等需求的原因之一。使用GBK编码,每个字符需要使用1个到2个字节来编码,其中第一个字节的范围在0x81—0xFE之间,第二个字节范围在0x40—0xFE之间,但是有一些特殊的汉字需要三个字节来编码。 将中文存储到计算机中,需要使用中文字符编码方式来进行编码存储。GB2312编码GBK编码都是几种常见的中文字符编码方式,可以实现中文的存储和展示。在应用场景上,由于GBK编码包含了GB2312编码中没有的中文字符,因此GBK编码逐渐取代了GB2312编码,成为更为常用的中文字符编码方式。任何中文内容的处理,都需要用到对应的中文字符编码方式,以确保中文内容的准确性和完整性。 ### 回答3: GB2312编码GBK编码是用于将中文字符存储在计算机中的编码规范。GB2312编码是在1980年代制定的,主要是为了适应汉字的存储和传输需求。而GBK编码则是在GB2312编码的基础上进行改进的,增添了更多的汉字字符。 GB2312编码GBK编码都采用了双字节编码方式,即每个中文字符分配两个字节来表示。GB2312编码共收录了6,763个汉字,而GBK编码共收录了21,886个汉字。此外,GBK编码还对部分原先存在两个不同字符表示同一个汉字的问题进行了统一。 在实际应用中,GB2312GBK编码已经被广泛使用,特别是在中文操作系统和汉字处理软件中。如果想将中文文本存储到计算机中,可以采用这两种编码中的任何一种。但是需要注意的是,在传输和转换中,可能会出现乱码问题。因此,在进行数据交换时,需要确认双方所使用的编码规范是否一致。 总之,GB2312编码GBK编码是计算机中存储和处理中文字符的标准之一。了解这两种编码规范的基本原理和应用方法,可以更有效地进行中文文本处理和数据交换。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值