现在的位置: 首页 > 综合 > 正文

用JavaScript实现的将GB2312转换为UTF-8编码

2013年06月26日 ⁄ 综合 ⁄ 共 638字 ⁄ 字号 评论关闭

function gb2utf8(data){
    var glbEncode = [];
    gb2utf8_data = data;
    execScript("gb2utf8_data = MidB(gb2utf8_data, 1)", "VBScript");
    var t=escape(gb2utf8_data).replace(/%u/g,"").replace(/(.{2})(.{2})/g,"%$2%$1").replace(/%([A-Z].)%(.{2})/g,"@$1$2");
    t=t.split("@");
    var i=0,j=t.length,k;
    while(++i<j) {
        k=t[i].substring(0,4);
        if(!glbEncode[k]) {
            gb2utf8_char = eval("0x"+k);
            execScript("gb2utf8_char = Chr(gb2utf8_char)", "VBScript");
            glbEncode[k]=escape(gb2utf8_char).substring(1,6);
        }
        t[i]=glbEncode[k]+t[i].substring(4);
    }
    gb2utf8_data = gb2utf8_char = null;
    return unescape(t.join("%"));
}

抱歉!评论已关闭.