C#中文乱码,怎么解决?

程序如下:

void USARTCommon_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
int mRXDCount = USARTCommon.BytesToRead;
byte[] buf = new byte[mRXDCount];

USARTCommon.Read(buf, 0, mRXDCount);

builder.Length = 0;

this.Invoke((EventHandler)(delegate
{
builder.Append(Encoding.Unicode.GetString( buf ) );
textBoxDataReceive.AppendText(builder.ToString());
}));
}

请朋友们帮忙一下,让textBoxDataReceive文本框中可以显示出正确的中文

securecrt乱码怎么办

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-05-22
由于不知道你的USARTCommon.Read(buf, 0, mRXDCount);这个方法返回的byte数组是什么编码,所以你可偿试使用下面的编码进行测试。
builder.Append(Encoding.Unicode.GetString( buf ) );
改为:
builder.Append(Encoding.UTF8.GetString( buf ) );
builder.Append(Encoding.Default.GetString( buf ) );
一般情况下不是UTF8就是Default。本回答被网友采纳
第2个回答  2013-05-22
把unicode改为Default
第3个回答  2013-05-22
你把unicode,改为默认的,试试!
相似回答