QT5中文亂碼解決方案

2021-10-02 04:00:37 字數 1026 閱讀 2932

qt5中文亂碼解決方案

在qt5程式設計時,經常會出現中文亂碼的情況,原始碼如下:

#include

"mainwindow.h"

#include

intmain

(int argc,

char

*ar**)

編譯執行之後中文不能正常顯示,如圖:

為此專門查了好多資料,但是都沒有解決這個問題,後來嘗試了很多次之後,發現將原始碼修改一下即可。

#include

"mainwindow.h"

#include

#include

intmain

(int argc,

char

*ar**)

.show()

;return a.

exec()

;}

上面這種辦法,基本上每處需要中文顯示的地方都要加一遍,比較麻煩。因此找到一種一勞永逸的辦法,

在檔案開頭加入如下語句,即可隨意設定中文了。

#pragma execution_character_set("utf-8")
不過這種可能會出現如下警告資訊:

warning: ignoring #pragma execution_character_set  [

-wunknown-pragmas]

#pragma execution_character_set("utf-8")

遇到這種情況不要慌,像下面一樣改一下就可以了。

#if _msc_ver >= 1600

#pragma execution_character_set("utf-8")

#endif

Qt5中文亂碼解決方案

公升級到qt5.x之後,原先解決的qt顯示中文亂碼的方法突然不適用了,找了很多方式來解決這個問題 第一種 在公司 裡看到的方法,先將對應的cpp檔案用windows自帶的記事本開啟,另存為utf 8格式,然後在 中,遇到中文字元,使用qstringliteral 中文 進行修飾 這種方式每次新建乙個...

Qt5中文亂碼問題解決方案

個人感覺每個人的亂碼解決情況不一樣,本人亂碼時也在網上查詢了很多種方法,但是都無濟於事。個人情況 要在qt的ui介面中的tableview中顯示從資料庫查詢到的資訊 本人使用的是qt5.8.0,連線mysql資料庫,主要有兩點 1 將要插入的文字 注意是插入時 從qstring換成qbytearra...

Qt5中文亂碼問題

標頭檔案加上 include 在類裡面定義變數 qtextcodec codec 在建構函式中初始化變數 codec qtextcodec codecforname gb18030 在每次使用中文的時候直接呼叫 codec tounicode 開啟檔案 對於中文路徑 qstring filename...