.Net(c菗)漢字とユニックコードの相互変換例



{"Tilte": "\u535a\u5ba2\u56ed", "Href": "https://www.jb51.net"}

よくこのような内容のjson文字列に出会いますが、もともとはその中の漢字をユニックコードに変換しました。
Unicodeコード:
汉字をユニコーンコードにします。例えば、「王」符号化すると「王」になります。ユニコムの文字は「u」から始まり、后ろに4つの数字またはアルファベットがあります。すべての文字は16進数で、それぞれ256以内の数字です。一方の漢字は2文字からなるので、「738 b」は2文字で、それぞれ「73」「8 b」と分かりやすいです。ただし、ユニコムの文字コードの内容を漢字に変換する場合は、文字は後から前に処理されますので、順番に「8 b」「73」を組み合わせて漢字を得る必要があります。
 Unicode/漢字相互変換の実現:

/// <summary>
/// <summary>
///     Unicode
/// </summary>
/// <param name="source">    </param>
/// <returns>Unicode       </returns>
public static string String2Unicode(string source)
{
 byte[] bytes = Encoding.Unicode.GetBytes(source);
 StringBuilder stringBuilder = new StringBuilder();
 for (int i = 0; i < bytes.Length; i += 2)
 {
  stringBuilder.AppendFormat("\\u{0}{1}", bytes[i + 1].ToString("x").PadLeft(2, '0'), bytes[i].ToString("x").PadLeft(2, '0'));
 }
 return stringBuilder.ToString();
}

/// <summary>
/// Unicode    
/// </summary>
/// <param name="source">  Unicode      </param>
/// <returns>     </returns>
public static string Unicode2String(string source)
{
 return new Regex(@"\\u([0-9A-F]{4})", RegexOptions.IgnoreCase | RegexOptions.Compiled).Replace(
     source, x => string.Empty + Convert.ToChar(Convert.ToUInt16(x.Result("$1"), 16)));
}
上记のように.Net(cyco)汉字とUnicodeコードの互换例は小编が皆さんに共有している内容です。参考にしていただければと思います。どうぞよろしくお愿いします。