zoukankan      html  css  js  c++  java
  • 中文字符 与 十六进制Unicode编码 相互转换

    1、知识准备

      str.charCodeAt()  返回字符串中的第n个字符的代码;

      String.fromCharCode(27573)  返回指定Unicode编码的字符;

      例:

    var str="胜多负少";
    
    document.write(str.charCodeAt(0)+'<br/>');    //32988
    document.write(str.charCodeAt(2)+'<br/>');    //36127
    
    document.write(String.fromCharCode(32988)+'<br/>');        //
    document.write(String.fromCharCode(36127)+'<br/>');        //

    2、把 中文字符串 转换为 十六进制Unicode编码

        var toUnicode = function (s) {
            var str = "";
            for (var i = 0; i < s.length; i++) {
                str +="\\u"+s.charCodeAt(i).toString(16)+"\t";
            }
            return str;
        }
        var a = '胜多负少';
    
        document.write(toUnicode(a));    // \u80dc    \u591a    \u8d1f    \u5c11

    3、把 十六进制Unicode编码 转换为 中文字符串。 

      因为"\u"会被转义,所以字符串里要写成"\\u"。

        var toStr = function (n){
            var str = "";
            var s = n.split('\\u');
            for(var i = 0;i < s.length;i++){
                str += String.fromCharCode(parseInt(s[i],16))+"\t";
            }
            return str;
        }
        var b = "\\u80dc    \\u591a    \\u8d1f    \\u5c11";
    
        document.write(toStr(b));    // 胜    多    负    少

       当然,查看把 十六进制Unicode编码 转换为 中文字符串 最简单的方法就是:直接在 控制台 里 输入、回车,向下面这样(此处直接'\u+xxxx'就可):

    4、Unicode编码更多知识

        百度百科:http://baike.baidu.com/view/40801.htm

        阮一峰的网络日志:《字符编码笔记:ASCII,Unicode和UTF-8》   http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html

        汉字Unicode编码表:http://www.chi2ko.com/tool/CJK.htm

  • 相关阅读:
    [BZOJ3172]单词
    [BZOJ2434]阿狸的打字机
    [BZOJ1195]最短母串
    [codeforces743E]Vladik and cards
    [BZOJ2553]禁忌
    [BZOJ1009]GT考试
    [BZOJ3507]通配符匹配
    [BZOJ4027]兔子与樱花
    test20190308
    Luogu P2742 模板-二维凸包
  • 原文地址:https://www.cnblogs.com/duanhuajian/p/3045144.html
Copyright © 2011-2022 走看看