这样var str = "\xd2\xbb\xb4\xce\xd6\xbb\xc4\xdc\xcd\xb3\xbc\xc6\xd2\xbb\xd6\xd6\xc0\xe0\xd0\xcd\xb5\xc4\xb2\xfa\xc6\xb7\xa3\xa1"; var result = []; for(var i=0;i<str.length;i+=2){ var code = (str.charCodeAt(i)<<8)+str.charCodeAt(i+1); result.push(String.fromCharCode(code)); }
alert(result.join(''));
突然想到,你的可是是纯粹的字符串而不是像上面那样的,可以这样子 var str = "\\xd2\\xbb\\xb4\\xce\\xd6\\xbb\\xc4\\xdc\\xcd\\xb3\\xbc\\xc6\\xd2\\xbb\\xd6\\xd6\\xc0\\xe0\\xd0\\xcd\\xb5\\xc4\\xb2\\xfa\\xc6\\xb7\\xa3\\xa1"; var reg = /\\x([\da-z]{2})\\x([\da-z]{2})/ig; var result = []; while(reg.exec(str)){ var code = parseInt(RegExp.$1+RegExp.$2,16); result.push(String.fromCharCode(code)); }
alert(result.join(''));
D2 BB B4 CE D6 BB C4 DC CD B3 BC C6 D2 BB D6 D6 C0 E0 D0 CD B5 C4 B2 FA C6 B7 A3 A1gb2312:“一次只能统计一种类型的产品!”原来是韩文吖。
一开始也想过是gb2312,无奈测试时文件编码用的UTF-8,结果悲剧的乱码了。
<script language="vbscript"> Function ascChar(c) ascChar=chr(int("&H" & c)) End function </script><script language="javascript"> function HexJM(jsStr){ outStr=""; if(jsStr.indexOf(' ')<0){ for(i=0;i<jsStr.length;i+=4){ outStr += ascChar(jsStr.substring(i,i+4)); } alert(outStr) }else{ alert('error!'); } } HexJM("D2BBB4CED6BBC4DCCDB3BCC6D2BBD6D6C0E0D0CDB5C4B2FAC6B7A3A1"); </script>用了VB里面的chr函数。
每两个一组,做为unicode码,转出来的结果:튻듎횻쓜춳볆튻훖샠탍뗄닺욷ꎡ
貌似是韩文
var result = [];
for(var i=0;i<str.length;i+=2){
var code = (str.charCodeAt(i)<<8)+str.charCodeAt(i+1);
result.push(String.fromCharCode(code));
}
alert(result.join(''));
var str = "\\xd2\\xbb\\xb4\\xce\\xd6\\xbb\\xc4\\xdc\\xcd\\xb3\\xbc\\xc6\\xd2\\xbb\\xd6\\xd6\\xc0\\xe0\\xd0\\xcd\\xb5\\xc4\\xb2\\xfa\\xc6\\xb7\\xa3\\xa1";
var reg = /\\x([\da-z]{2})\\x([\da-z]{2})/ig;
var result = [];
while(reg.exec(str)){
var code = parseInt(RegExp.$1+RegExp.$2,16);
result.push(String.fromCharCode(code));
}
alert(result.join(''));
一开始也想过是gb2312,无奈测试时文件编码用的UTF-8,结果悲剧的乱码了。
<script language="vbscript">
Function ascChar(c)
ascChar=chr(int("&H" & c))
End function
</script><script language="javascript">
function HexJM(jsStr){
outStr="";
if(jsStr.indexOf(' ')<0){
for(i=0;i<jsStr.length;i+=4){
outStr += ascChar(jsStr.substring(i,i+4));
}
alert(outStr)
}else{
alert('error!');
}
}
HexJM("D2BBB4CED6BBC4DCCDB3BCC6D2BBD6D6C0E0D0CDB5C4B2FAC6B7A3A1");
</script>用了VB里面的chr函数。