Qt 解決中文亂碼問題

2021-06-18 04:04:15 字數 761 閱讀 1070

也許你在用這個方法實現中文化,但它確實不夠嚴謹

laguage» c++ title» 出現頻率最高的辦法

#include 

int main(int argc, char *argv)   

很多地方都會告訴你,這樣可以實現qt支援中文,包括我看的教程書上也是,他甚至告訴我要支援中文必須加入這段**,但我想告訴你,這個辦法是有問題的,而且這個問題還不小!我在兩台同樣是xp系統的機子上移植就出現了中文亂碼問題,而且所有中文都是用了tr()的。所以請別迷信那些教程,實踐才是真理!

你可以嘗試這個方法

laguage» c++ title»

#include 

int main(int argc, char *argv)   

雖然這個方法看似更為嚴謹,你可以嘗試,不過這麼寫還是會有問題,至少沒有解決我的問題。這也是我網上看到的出現頻率也挺高的方法,不過我想說的是:其實這個辦法治標不治本,因為它後面只是對拓寬對中文支援的範圍,而一般我們都建議把中文寫在tr(「」)裡。

推薦個比較保險的辦法

laguage» c++ title» 我推薦的方法

int main(int argc, char *argv) 

這裡獲取了系統字型編碼,解決了我的問題,個人也覺得這個辦法應該是個不錯的解決方案。

也可能是字型選擇不當造成的亂碼

如果你始終解決不了亂碼問題,可以嘗試設定下字型,但其實是否是字型造成的亂碼的方法很簡單,如果出現的是乙個個方塊,便是字型設定不當,否則,優先考慮編碼設定。

QT 解決中文亂碼問題

經過總結,基本上是能解決qt中所有中文亂碼問題,希望對大家有所幫助。介面亂碼 include qtextcodec setcodeforcstrings qtextcodec codecforname system qtextcodec setcodeforlocale qtextcodec cod...

qt 中文亂碼 Qt中文亂碼問題

接觸了qt,由於習慣中vs,如果使用vs寫qt 剛接觸很快就發現有中文亂碼問題,我的解決方法如下 新建乙個標頭檔案,比如qtchcharset.h,標頭檔案中內容如下 pragma once ifdef q os win q os win 新增後支援gb2312,utf 8 bom,unicode ...

QT解決顯示中文亂碼問題

以settext為例,新增qstringliteral 即可解決亂碼問題 settext qstringliteral 你好 你要明白qobject tr是幹嘛的。它是用於程式國際化使用的,也就可以介面文字翻譯成不同的語zd言。你如果使用qobject tr,你應該全部用英文表示,然後後面借助lin...