zoukankan      html  css  js  c++  java
  • JS中的UniCode转码问题

    <script type="text/javascript">
            var GB2312UnicodeConverter = {
                ToUnicode: function (str) {
                    return escape(str).toLocaleLowerCase().replace(/%u/gi, '\\u');
                }
                , ToGB2312: function (str) {
                    return unescape(str.replace(/\\u/gi, '%u'));
                }
            };
    
            var str = '上海', unicode;
            document.write(str + '<br/>');
            unicode = GB2312UnicodeConverter.ToUnicode(str);
            document.write('汉字转换为Unicode代码:' + unicode + '<br/><br/>');
            document.write('Unicode代码转换为汉字:' + GB2312UnicodeConverter.ToGB2312(unicode));
        </script>
    

      

    /// <summary>
            /// 汉字转换为Unicode编码
            /// </summary>
            /// <param name="str">要编码的汉字字符串</param>
            /// <returns>Unicode编码的的字符串</returns>
            public static string ToUnicode(string str)
            {
                byte[] bts = Encoding.Unicode.GetBytes(str);
                string r = "";
                for (int i = 0; i < bts.Length; i += 2) r += "\\u" + bts[i + 1].ToString("x").PadLeft(2, '0') + bts[i].ToString("x").PadLeft(2, '0');
                return r;
            }
            /// <summary>
            /// 将Unicode编码转换为汉字字符串
            /// </summary>
            /// <param name="str">Unicode编码字符串</param>
            /// <returns>汉字字符串</returns>
            public static string ToGB2312(string str)
            {
                string r = "";
                MatchCollection mc = Regex.Matches(str, @"\\u([\w]{2})([\w]{2})", RegexOptions.Compiled | RegexOptions.IgnoreCase);
                byte[] bts = new byte[2];
                foreach (Match m in mc)
                {
                    bts[0] = (byte)int.Parse(m.Groups[2].Value, NumberStyles.HexNumber);
                    bts[1] = (byte)int.Parse(m.Groups[1].Value, NumberStyles.HexNumber);
                    r += Encoding.Unicode.GetString(bts);
                }
                return r;
            }
    

      

  • 相关阅读:
    PHP使用Redis的GEO地理信息类型
    Redis长短链接的区别
    Linux之ln文件创建链接
    xml与json格式互转
    爬虫实例:唐诗宋词爬虫
    爬虫实例:天猫商品评论爬虫
    爬虫实例:饿了么爬虫
    爬虫实例:中国日报高频词汇爬虫
    爬虫实例:今日头条爬虫
    特殊类型的列表切片
  • 原文地址:https://www.cnblogs.com/chu888chu888/p/2352169.html
Copyright © 2011-2022 走看看