Rumah  >  Artikel  >  pembangunan bahagian belakang  >  C#将Unicode编码转换为汉字字符串的代码分析

C#将Unicode编码转换为汉字字符串的代码分析

黄舟
黄舟asal
2017-03-27 11:52:502119semak imbas

下面小编就为大家带来一篇C#将Unicode编码转换为汉字字符串的简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

C# 将js中的UNICODE转换为字符串,网上找的都不行,遇到有数字的转不出来,稍稍改了点,OK了!

实例如下:

/// 将Unicode编码转换为汉字字符串 
    /// 
    /// Unicode编码字符串 
    /// 汉字字符串 
    public static string ToGB2312(string str) 
    { 
      MatchCollection mc = Regex.Matches(str, "([\\w]+)|(\\\\u([\\w]{4}))");
      if (mc != null && mc.Count > 0)
      {
        StringBuilder sb = new StringBuilder();
        foreach (Match m2 in mc)
        {
          string v = m2.Value;
          if (v.StartsWith("\\"))
          {
            string word = v.Substring(2);
            byte[] codes = new byte[2];
            int code = Convert.ToInt32(word.Substring(0, 2), 16);
            int code2 = Convert.ToInt32(word.Substring(2), 16);
            codes[0] = (byte)code2;
            codes[1] = (byte)code;
            sb.Append(Encoding.Unicode.GetString(codes));
          }
          else
          {
            sb.Append(v);
          }
        }
        return sb.ToString();
      }
      else
      {
        return str;
      }
    }

Atas ialah kandungan terperinci C#将Unicode编码转换为汉字字符串的代码分析. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn