博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js中utf8和中文互转的方法
阅读量:3521 次
发布时间:2019-05-20

本文共 1970 字,大约阅读时间需要 6 分钟。

中文转utf8

function EncodeUtf8(s1){
var s = escape(s1); var sa = s.split("%"); var retV =""; if(sa[0] != "") {
retV = sa[0]; } for(var i = 1; i < sa.length; i ++) {
if(sa[i].substring(0,1) == "u") {
retV += Hex2Utf8(Str2Hex(sa[i].substring(1,5))); } else retV += "%" + sa[i]; } return retV;}function Str2Hex(s){
var c = ""; var n; var ss = "0123456789ABCDEF"; var digS = ""; for(var i = 0; i < s.length; i ++) {
c = s.charAt(i); n = ss.indexOf(c); digS += Dec2Dig(eval(n)); } //return value; return digS;}function Dec2Dig(n1){
var s = ""; var n2 = 0; for(var i = 0; i < 4; i++) {
n2 = Math.pow(2,3 - i); if(n1 >= n2) {
s += '1'; n1 = n1 - n2; } else s += '0'; } return s;}function Dig2Dec(s){
var retV = 0; if(s.length == 4) {
for(var i = 0; i < 4; i ++) {
retV += eval(s.charAt(i)) * Math.pow(2, 3 - i); } return retV; } return -1;}function Hex2Utf8(s){
var retS = ""; var tempS = ""; var ss = ""; if(s.length == 16) {
tempS = "1110" + s.substring(0, 4); tempS += "10" + s.substring(4, 10); tempS += "10" + s.substring(10,16); var sss = "0123456789ABCDEF"; for(var i = 0; i < 3; i ++) {
retS += "%"; ss = tempS.substring(i * 8, (eval(i)+1)*8); retS += sss.charAt(Dig2Dec(ss.substring(0,4))); retS += sss.charAt(Dig2Dec(ss.substring(4,8))); } return retS; } return "";}

utf8转中文

// UTF8编码转成汉字字符串function revertUTF8(szInput) {
var x,wch,wch1,wch2,uch="",szRet=""; for (x=0; x

测试

var utf = EncodeUtf8("你好");  var uni = revertUTF8(utf);  console.log('utf:'+utf + ' '+'uni:' + uni);  输出:	monitor_pd.js:159 utf:%E4%BD%A0%E5%A5%BD uni:你好

转载地址:http://dxqqj.baihongyu.com/

你可能感兴趣的文章
Scala-HelloWorld
查看>>
Scala-IDEA中环境部署
查看>>
Scala-HelloWorld解析
查看>>
Scala-变量和数据类型
查看>>
Scala-流程控制
查看>>
Scala-面向对象后章
查看>>
iOS蓝牙原生封装,助力智能硬件开发
查看>>
iOS 代码的Taste(品位)
查看>>
iOS开发代码规范
查看>>
iOS组件化实践(基于CocoaPods)
查看>>
【iOS学习】RxSwift从零入手 - 介绍
查看>>
数据结构之栈
查看>>
Elastic Stack简介
查看>>
关于deepin系统安装design compiler的问题解答
查看>>
Java Agent简介及使用Byte Buddy和AspectJ LTW监控方法执行耗时
查看>>
记录一下最近的学习经历
查看>>
hadoop3.0+spark2.0两台云服务器集群环境配置。
查看>>
记第一次面试经历
查看>>
网站实现qq登录(springboot后台)
查看>>
简单的用户头像修改功能(springboot后台)
查看>>