1.获取所有编码名称及其描述信息
使用Encoding类静态的GetEncodings方法可得到一个包含所有编码EncodingInfo类型的数组。
EncodingInfo类同位于System.Text命名空间下,提供有关编码的基本信息。
foreach (EncodingInfo ei in Encoding.GetEncodings())
{
Encoding en = ei.GetEncoding();
Listbox.Items.Add("编码名称:"+ei.Name+"编码描述:"+en.EncodingName);
}
2.不同编码之间的转换
利用Encoding类的Convert方法可将字节数组从一种编码转换为另一种编码,转换结果为一个byte类型的数组。
public static byte[] Convert(
Encoding srcEncoding, //源编码
Encoding dstEncoding, //目标编码
byte[] bytes //待转换的字节数组
)
private void Button_Click(object sender, RoutedEventArgs e)
{
string str = TextBox1.Text;
byte[] b1 = Encoding.Default.GetBytes(str); //将字符串转化为Default编码的byte数组
byte[] b2 = Encoding.Convert(Encoding.Default, Encoding.UTF8, b1);
for (int i = 0; i <= 20;i++ )
{
Listbox.Items.Add(b2[i]);
}
TextBox2.Text = Encoding.Default.GetString(b2);
}
下面是实现之后的效果:
没写完 ,一会儿补。。。