中文字符 與 十六進制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

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM