Heim > Web-Frontend > js-Tutorial > Hauptteil

UniCode-Transkodierungsproblem von js (Code)

不言
Freigeben: 2018-08-18 16:46:52
Original
1713 Leute haben es durchsucht

本篇文章给大家带来的内容是关于js的UniCode转码问题 (代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

<code class="language-javascript"><script type="text/javascript"><br/>        var GB2312UnicodeConverter = {<br/>            ToUnicode: function (str) {<br/>                return escape(str).toLocaleLowerCase().replace(/%u/gi, &#39;\\u&#39;);<br/>            }<br/>            , ToGB2312: function (str) {<br/>                return unescape(str.replace(/\\u/gi, &#39;%u&#39;));<br/>            }<br/>        };<br/><br/>        var str = &#39;上海&#39;, unicode;<br/>        document.write(str + &#39;<br/>&#39;);<br/>        unicode = GB2312UnicodeConverter.ToUnicode(str);<br/>        document.write(&#39;汉字转换为Unicode代码:&#39; + unicode + &#39;<br/><br/>&#39;);<br/>        document.write(&#39;Unicode代码转换为汉字:&#39; + GB2312UnicodeConverter.ToGB2312(unicode));<br/>    </script><br/></code>
Nach dem Login kopieren

  

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

相关推荐:

js中splice方法和slice方法的解析

js中正则表达式的代码实例

Das obige ist der detaillierte Inhalt vonUniCode-Transkodierungsproblem von js (Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage