JS实现unicode和UTF-8之间的互相转换互转
有⼀设备,为短信⽹关。需将PC送过来的UTF-8转换成UNICODE才能将内容通过短信发送出去,同样,接收到的短信为unicode编码,也许转换成UTF-8才能在PC端软件显⽰出来。程序很简单,只是⾛了不少弯路:
unicode字符转中文//unicode为1个接收数据,串⼝收到的字符编码放在该数组中
function UnicodeToUtf8(unicode) {
var uchar;
var utf8str = "";
var i;
for(i=0; i<unicode.length;i+=2){
uchar = (unicode[i]<<8) | unicode[i+1]; //UNICODE为2字节编码,⼀次读⼊2个字节
utf8str = utf8str + String.fromCharCode(uchar); //使⽤String.fromCharCode强制转换
}
return utf8str;
}
function Utf8ToUnicode(strUtf8) {
var i,j;
var uCode;
var temp = new Array();
for(i=0,j=0; i<strUtf8.length; i++){
uCode = strUtf8.charCodeAt(i);
if(uCode<0x100){ //ASCII字符
temp[j++] = 0x00;
temp[j++] = uCode;
}else if(uCode<0x10000){
temp[j++] = (uCode>>8)&0xff;
temp[j++] = uCode&0xff;
}else if(uCode<0x1000000){
temp[j++] = (uCode>>16)&0xff;
temp[j++] = (uCode>>8)&0xff;
temp[j++] = uCode&0xff;
}else if(uCode<0x100000000){
temp[j++] = (uCode>>24)&0xff;
temp[j++] = (uCode>>16)&0xff;
temp[j++] = (uCode>>8)&0xff;
temp[j++] = uCode&0xff;
}else{
break;
}
}
temp.length = j;
return temp;
}
以上所述是⼩编给⼤家介绍的JS实现unicode和UTF-8之间的互相转换互转,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。在此也⾮常感谢⼤家对⽹站的⽀持!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论