Mr.Cheung 发表于 2022-1-23 14:24:20

qt6使用自己写的串口在textBrower中显示中文乱码

qt6使用自己写的串口在textBrower中显示中文乱码

void SerialPort::readData(){
    QByteArray buf;

      if(serialPort){
             buf = serialPort->readAll();
          if(!buf.isEmpty()){
               // if(ui->RecTextRB->isChecked()){
                  QString myStrTemp = QString::fromUtf8(buf);
                  QString str = ui->textBrowser->toPlainText();
                  str +=myStrTemp;
                  ui->textBrowser->clear();
                  ui->textBrowser->append(str);
            }
      }

      buf.clear();
}
这样的代码在显示中文的时候会乱码,
但当QString myStrTemp = QString::fromUtf8(buf);中的buf改为中文,在显示的时候不会乱码
请问这种情况怎么处理那?

lennyaaa 发表于 2022-2-19 20:35:13

你得保证串口返回的是中文的UTF8编码才行

lennyaaa 发表于 2022-2-19 20:35:44

实际开发基本不用串口传送中文,都是传输英文
页: [1]
查看完整版本: qt6使用自己写的串口在textBrower中显示中文乱码