阅读量:0
在C#中,可以使用System.Text.Encoding类来进行字符编码转换。对于WideCharToMultiByte函数的转换,可以使用Encoding类的GetEncoding方法指定源和目标编码,然后使用GetBytes方法将字符串转换为字节数组,最后使用GetString方法将字节数组转换为字符串。
以下是一个示例代码:
using System; using System.Text; public class Program { public static void Main() { string chineseText = "你好"; Encoding srcEncoding = Encoding.Unicode; Encoding dstEncoding = Encoding.GetEncoding("gb2312"); byte[] srcBytes = srcEncoding.GetBytes(chineseText); byte[] dstBytes = Encoding.Convert(srcEncoding, dstEncoding, srcBytes); string result = dstEncoding.GetString(dstBytes); Console.WriteLine(result); } }
在此示例中,源编码为Unicode(wide char)编码,目标编码为gb2312(多字节)编码。首先,通过GetBytes
方法将字符串转换为字节数组,然后使用Encoding.Convert
方法将字节数组从源编码转换为目标编码,最后使用GetString
方法将字节数组转换为字符串。
运行此代码将输出"你好"。