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

程序如下:voidUSARTCommon_DataReceived(objectsender,SerialDataReceivedEventArgse){intmRXDC... 程序如下:

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文本框中可以显示出正确的中文
展开
 我来答
钺灿灿0j0
2020-12-22 · TA获得超过1.1万个赞
知道大有可为答主
回答量:3.7万
采纳率:81%
帮助的人:1399万
展开全部

securecrt乱码怎么办

whm412
2013-05-22 · TA获得超过515个赞
知道小有建树答主
回答量:289
采纳率:66%
帮助的人:280万
展开全部
由于不知道你的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。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阿扬电声
2013-05-22 · TA获得超过1224个赞
知道小有建树答主
回答量:634
采纳率:0%
帮助的人:105万
展开全部
把unicode改为Default
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
707960619
2013-05-22
知道答主
回答量:17
采纳率:0%
帮助的人:2.5万
展开全部
你把unicode,改为默认的,试试!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式