qt程式中文經常亂碼,雖然有qstring::fromlocal8bit()或者tr()函式可以將中文包起來,但是每個有中文的地方都輸一遍還是有點麻煩,希望「一勞永逸」地解決。
在4.x版本中,可以使用qtextcodec類,在main函式一開始的時候做類似下面的設定:
qtextcodec::setcodecforlocale("gbk");
qtextcodec::setcodecfortr("gbk");
不過在5.x版本中這種方法不再適用了。
乙個可以替代的「一勞永逸」方法是在每個.cpp檔案的開頭,新增下面的語句:
#pragma execution_character_set("utf-8")
注意,每個有中文顯示的原始檔都要新增。 Qt4 Qt5等Qt版本解決中文亂碼問題
在網上找了很長時間,大部分都是其他人瞎折騰 的,很多都不行,實用性很低,現在寫的這個總結也是在網上找了很久總結出來的,經本人在qt4.5和qt5.3上面測試確實可行 我們都是中國人,很多標題用的都是中文,所以直接在main函式中定義如下 qtextcodec setcodecforcstrings ...
QT5 解決中文亂碼問題
qt中的中文顯示,經常會出現亂碼。從網上看了一些部落格,大都是qt4中的解決方法,網上搜到的都是這種 include qtextcodec int main int argc,char ar qt5中,取消了qtextcodec setcodecfortr 和qtextcodec setcodecf...
Qt5中文亂碼問題
標頭檔案加上 include 在類裡面定義變數 qtextcodec codec 在建構函式中初始化變數 codec qtextcodec codecforname gb18030 在每次使用中文的時候直接呼叫 codec tounicode 開啟檔案 對於中文路徑 qstring filename...