
Qt5.5.1,只寫了一行代碼qDebug() << QString("哈哈"); 運行時沒問題,除錯時就顯示亂碼,大神幫忙解決一下,先謝謝了~
uj5u.com熱心網友回復:
沒關系,這個并不影響寫代碼,因為就算程式發布也不會是亂碼,只是除錯時列印中文是亂碼uj5u.com熱心網友回復:
但是很不方便啊,還是希望可以解決一下這個問題uj5u.com熱心網友回復:
那不太清楚,QMessageBox提示出來也行的
uj5u.com熱心網友回復:
我的亂碼和你 都不一樣啊,我的是2進制的呀,怎么處理啊,大佬uj5u.com熱心網友回復:
出了問題要想清楚原因,首先代碼沒問題,亂碼都是編碼方式的問題,你的代碼是utf-8,你看看你編譯時候的編譯編碼是什么。uj5u.com熱心網友回復:
前兩天剛解決,要搞清楚編譯器中編碼方式,還得搞清楚每個地方使用的編碼方式。只要對應就可以正常顯示。有些編碼可以兼容也可以正常顯示。uj5u.com熱心網友回復:
只要是亂碼,肯定是不兼容或者不是顯示所對應的編碼方式uj5u.com熱心網友回復:
來我這里看吧。我的解決方法:https://www.cnblogs.com/yjphhw/p/9967294.htmluj5u.com熱心網友回復:
windows 上用檔案默認保存是按照gb2312或cp936編碼方式保存的QString默認是unicode,可以試試#8的方式或QString::fromLocal8Bituj5u.com熱心網友回復:
前兩天剛解決,要搞清楚編譯器中編碼方式,還得搞清楚每個地方使用的編碼方式。只要對應就可以正常顯示。有些編碼可以兼容也可以正常顯示。
你確定嗎?有試過?這并不是你所謂的中文亂碼問題
uj5u.com熱心網友回復:
qdebug() 有毒的, 建議不要輸出中文。 我們又不知道下面那個 "應用程式輸出"里的是什么編碼uj5u.com熱心網友回復:
如果你的專案原始碼為UTF-8編碼,那么建議改成qDebug()<<QString::fromUtf8("哈哈")uj5u.com熱心網友回復:
1. QString str = QString::fromLocal8Bit("中文"); // vs2008 vs20052. QString str = QString::fromLocal8Bit("中文"); // gcc vs2003, 如原始碼是 GBK 編碼(記事本中的 ANSI 編碼)
3.QString str = QString::fromUtf8("中文"); // gcc vs2003, 如原始碼是 UTF-8 編碼
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/78570.html
標籤:Qt
