在C#中,使用UnicodeEncoding
类可以处理非ASCII字符。UnicodeEncoding
类用于将字符串转换为字节数组,以及将字节数组转换回字符串。以下是一些示例,说明如何使用UnicodeEncoding
处理非ASCII字符:
- 将字符串转换为字节数组:
using System; using System.Text; class Program { static void Main() { string input = "你好,世界!"; UnicodeEncoding unicodeEncoding = new UnicodeEncoding(); byte[] byteArray = unicodeEncoding.GetBytes(input); Console.WriteLine("字节数组:"); foreach (byte b in byteArray) { Console.Write(b + " "); } } }
- 将字节数组转换回字符串:
using System; using System.Text; class Program { static void Main() { byte[] byteArray = new byte[] { 0xE4, 0xBD, 0xA0, 0xE5, 0xA5, 0xBD, 0xEF, 0xBC, 0x8C, 0xEF, 0xBC, 0x81 }; UnicodeEncoding unicodeEncoding = new UnicodeEncoding(); string output = unicodeEncoding.GetString(byteArray); Console.WriteLine("字符串:"); Console.WriteLine(output); } }
在这两个示例中,我们使用了UnicodeEncoding
类来处理包含非ASCII字符的字符串。第一个示例将字符串转换为字节数组,第二个示例将字节数组转换回字符串。在这两种情况下,我们都可以看到非ASCII字符(例如“你好”和“世界”)被正确处理。