QT 串口的汉字
现在接收单片机串口发送的数据,但是汉字有乱码现象QT的接收代码如下
QByteArray info = Serial_Com->readAll();
if(ui->view_mode->isChecked())
{
QString buffer = QString::fromLocal8Bit(info);
ui->data_area->insertPlainText(buffer);
qDebug()<<buffer;
}
网上查的说改变编码,这个默认使用的是UTF-8编码了
请问一下,该怎么修改呢? 自己做一个收发程序试试?看看是哪的问题 先 info.toLocal8Bit(), 试试看 Since 发表于 2019-9-11 18:10
先 info.toLocal8Bit(), 试试看
info 是QByteArray类型,你说的这种写法不行啊 可能是单片机发送的格式有点问题{:3_61:} 选择GBK格式就可以正常显示了,好像在这里选择只是暂时的,下次打开还要选。以前我试过在notepad++,打开cpp和h文件,在菜单栏编码那里改成UTF-8格式,保存就可以了。然后在qt会提示文件以外被改,你确认重新加载就行了。
谢谢大家回答,忘记及时反馈结果了。
这样可以正常显示,之前出问题应该是单片机发送出问题了。 怦然心动如往昔 发表于 2019-9-22 22:50
谢谢大家回答,忘记及时反馈结果了。
这样可以正常显示,之前出问题应该是单片机发送出问题了。 ...
所以是QT的接收程序要改呢,还是单片机的发送数据函数要改呀?
页:
[1]