Qt中的中文顯示,經常會出現亂碼,但在UI設計界面上添加的中文是不會出現亂碼的,如果你剛使用qt,那麼你肯定會碰到這個問題。
網上搜索一下,找到的都是這種:
#include < QTextCodec >
main( argc, **argv)
{
....................
QTextCodec::setCodecForTr(QTextCodec::codecForName(""));
QTextCodec::setCodecForLocale(QTextCodec::codecForName(""));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName(""));
..........................
}
Qt5中,一些函數已經被取消了,而且網上很多都是不推薦這種寫法。所以當時找到的是自行轉換:
QTextCodec * BianMa = QTextCodec::codecForName ( "" );
QMessageBox::information(, "", BianMa->toUnicode(""));
QString strInfo = QStringLiteral(info);
QString strInfo = QString::fromLocal8Bit(info);
對於中文常量,使用QStringLiteral即可解決,對於字符串變量,使用QString自帶函數也可以輕松解決。