有一设备,为短信网关。需将PC送过来的UTF-8转换成UNICODE才能将内容通过短信发送出去,同样,接收到的短信为unicode编码,也许转换成UTF-8才能在PC端软件显示出来。程序很简单,只是走了不少弯路:

//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++] = (uCode8)&0xff; 
      temp[j++] = uCode&0xff; 
    }else if(uCode<0x1000000){ 
      temp[j++] = (uCode16)&0xff; 
      temp[j++] = (uCode8)&0xff; 
      temp[j++] = uCode&0xff; 
    }else if(uCode<0x100000000){ 
      temp[j++] = (uCode24)&0xff; 
      temp[j++] = (uCode16)&0xff; 
      temp[j++] = (uCode8)&0xff; 
      temp[j++] = uCode&0xff; 
    }else{ 
      break; 
    } 
  } 
  temp.length = j; 
  return temp; 
} 

以上所述是小编给大家介绍的JS实现unicode和UTF-8之间的互相转换互转,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

标签:
js,unicode和UTF-8互转

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
狼山资源网 Copyright www.pvsay.com

评论“JS实现unicode和UTF-8之间的互相转换互转”

暂无“JS实现unicode和UTF-8之间的互相转换互转”评论...

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?