qt中文亂碼的問題,從網絡或者串口收到的二進制數據,重新解析中文亂碼

如果從串口或者網絡收到傳送過來的中文數據解析發生亂碼,解決辦法如下:

1、發送時把中英文混合字符串轉換成16進制用:.QByteArray tsd=tstr.toLocal8bit();

2、收到數據時,使用如下方法處理:

      2.1.QByteArray td;

      2.2.td=接收的16進制數據

      2.3.QTextCodec *tc=QTextCodec::codeForNmae("GBK");

      2.4.tstr=tc->toUnicode(td);

      2.5.此時,tstr裏面中文英文均正常了

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章