JS实现unicode和UTF-8之间的互相转换互转
时间:2019-03-30
本文章向大家介绍JS实现unicode和UTF-8之间的互相转换互转,主要包括JS实现unicode和UTF-8之间的互相转换互转使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
有一设备,为短信网关。需将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++] = (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之间的互相转换互转,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
- JDK容器学习之Queue:ConcurrentLinkedQueue
- JDK容器学习之Queue: PriorityQueue
- React Native导航器之react-navigation使用
- Nginx 路由转发配置笔记
- React Native控件之ListView
- Java学习之深拷贝浅拷贝及对象拷贝的两种方式
- [周末课程]什么是“页面业务流程”分析思维导图?如何编写页面假JSON数据? &下一个前端组件“日历”
- Java并发学习之玩转线程池
- Java & PhantomJs 实现html输出图片
- 干货 | React Native实践之携程Moles框架
- Java并发学习之ThreadLocal使用及原理介绍
- ibeacon蓝牙技术简介
- Java并发学习之定时任务的几种玩法
- [视频直播]本周日先行者视频“React多级菜单
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 微信小程序开发实战(22):上传文件和下载文件
- 语法糖--JAVA成长之路
- 使用 GitHub Action来托管AutoML软件
- Python爬虫实现自动登录、签到功能 附代码
- Recon-ng被动信息收集框架入门
- 猿实战03——猿首战之手把手教你撸品牌
- 用树莓派DIY波士顿机器狗,帮你省下50万:教程开源,人人皆可上手
- OpenCV绘制箭头线段---函数arrowedLine()使用(C++ Python)
- PyTorch中基于TPU的FastAI多类图像分类
- 【Rust日报】 2020-08-20 Chrome 的 Rust 与 C++ 的互操作性
- 聊聊claudb的DatabaseCleaner
- nc很强大,容易让人蹲号子
- Rust FFI 编程 - Rust导出共享库05
- 详解ENet | CPU可以实时的道路分割网络
- Linux进程调度之 - O(1)调度算法