. Net (C #) Kanji and Unicode encoding convert each other

Source: Internet
Author: User

{"tilte""\u535a\u5ba2\u56ed" "Href"  "http://www.cnblogs.com"}

Often encountered such a content JSON string, the original is the Chinese character in the Unicode encoding conversion.

Unicode encoding:

Unicode encoding of Chinese characters, such as: "King" after the code became "\ King", Unicode characters start with \u, followed by 4 numbers or letters, all characters are 16 decimal numbers, each two represents a number within 256. And a Chinese character is composed of two characters, so it is easy to understand, "738b" is two characters, respectively, is "" "8b". However, when the Unicode character encoding content is converted to Chinese characters, the characters are processed from the back, so the characters need to be combined in order "8b" "73" to get Chinese characters.

unicode/Chinese character Mutual transfer realization:
/// <summary>/// <summary>///string to Unicode/// </summary>/// <param name= "source" >Source String</param>/// <returns>Unicode-encoded string</returns> Public Static stringString2unicode (stringsource) {    byte[] bytes =Encoding.Unicode.GetBytes (source); StringBuilder StringBuilder=NewStringBuilder ();  for(inti =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')); }    returnstringbuilder.tostring ();}/// <summary>///Unicode to String/// </summary>/// <param name= "source" >Unicode-encoded string</param>/// <returns>Normal String</returns> Public Static stringUnicode2string (stringsource) {    return NewRegex (@"\\u ([0-9a-f]{4})", Regexoptions.ignorecase |regexoptions.compiled). Replace (source, x=string. Empty + Convert.tochar (convert.touint16 (X.result (" $"), -)));}

. Net (C #) Kanji and Unicode encoding convert each other

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.