關於Qt中文顯示問題

2021-06-26 07:41:38 字數 679 閱讀 7595

好久沒寫部落格了,罪過罪過,近期開始更新,包括以前寫的筆記也會整理整理

最近在看c++qt gui,在做練習的時候發現第三章的spreadsheet例子中文顯示亂碼,在網上搜了搜也沒搜到。。。。就暫時放著,今天無意看到了一篇部落格剛剛好寫這個,就總結下吧

貌似linux下預設情況qt的字元編碼是gb18030-0, 是00年國家頒布的漢字編碼,不過我執行的結果依然是亂碼,有人說是c++的中文的支援並不是很好。

那就想到了更改字元編碼。

qt自己有一套更改字元編碼的函式,那麼我們直接呼叫就好了。

標頭檔案#include

qtextcodec *codec = qtextcodec::codecforname("編碼型別");

//設定tr("")的字元編碼

qtextcodec::setcodecfortr(codec);

//設定字串的字元編碼

qtextcodec::setcodecforcstrings(codec);

還有許多可設定的可以參考qt assistant

包括編碼型別,有20多種,可設定的函式也有十幾種。

目前我常用的就是上面的兩種,加到main函式窗體顯示**的前面,如果加到後面不會有效果,你肯定要先設定顯示內容的格式把 - -.

最後我測試成功用的是utf-8,這個編碼格式還是支援比較多的,聽說最多的也是它。

QT問題3 QT中文顯示

顯示不了中文或者中文亂碼 把他放到裝置的乙個指定資料夾下面 在qt進 的時候 include mainwindow.h 這樣初始化進入介面就會是中文介面 但是這裡還有個問題,如果在程式過程中使用字型檔可能會亂碼 解決方法1 那是因為編碼的問題,所以還需要 include mainwindow mai...

Qt顯示中文

以下說的只是自己的一些總結,不對了或不全面還望指正。qtextcodec setcodecfortr qtextcodec codecforname gb18030 qfont font times 10,qfont normal,false 就上面的3句話就ok了,而且是在qt4環境下 網上有個方...

Qt中文顯示

qt預設的編碼 unicode 是不能顯示中文的,可能由於windows的預設編碼的問題,windows預設使用 gbk gb2312 gb18030 所以需要來更改qt程式的編碼來解決中文顯示的問題。qt中有專門的乙個類來處理編碼的問題 qtextcodec 1.設定qobject的成員函式tr ...