C#中文乱码解决:UTF8 转 UNICODE

您所在的位置:网站首页 c读取xml文件中文为乱码 C#中文乱码解决:UTF8 转 UNICODE

C#中文乱码解决:UTF8 转 UNICODE

2023-09-21 16:18| 来源: 网络整理| 查看: 265

XML文件可以采用多种编码,但是经过不同的编码后对于中文会出现乱码问题,比如“骞垮憡涓戦椈”,对于此问题的解决如下:

static void Main()      {         string utf8String = "骞垮憡涓戦椈";

         // Create two different encodings.         Encoding utf8= Encoding.UTF8;         Encoding defaultCode= Encoding.Default;

         // Convert the string into a byte[].         byte[] utf8Bytes = default.GetBytes(utf8String );

         // Perform the conversion from one encoding to the other.         byte[] defaultBytes = Encoding.Convert(utf8, defaultCode, utf8Bytes );                     // Convert the new byte[] into a char[] and then into a string.         // This is a slightly different approach to converting to illustrate         // the use of GetCharCount/GetChars.         char[] defaultChars = new char[defaultCode.GetCharCount(defaultBytes , 0, defaultBytes .Length)];         defaultCode.GetChars(defaultBytes , 0, defaultBytes .Length, defaultChars , 0);         string defaultString = new string(defaultChars );

         // Display the strings created before and after the conversion.         Console.WriteLine("Original string: {0}", utf8String);         Console.WriteLine("Ascii converted string: {0}", defaultString);

//或者如下:         byte[] buffer1 = Encoding.Default.GetBytes(utf8String );         byte[] buffer2 = Encoding.Convert(Encoding.UTF8, Encoding.Default, buffer1, 0, buffer1.Length);         string strBuffer = Encoding.Default.GetString(buffer2, 0, buffer2.Length);      }



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3