QT中文亂碼問題總結
QT環境:MSVC
代碼文本需要以UTF8-BOM保存,且文本保存後重新構建纔會生效,否則直接運行還是會亂碼。
以下兩種方法只可取其一,不可混用。
1、使用中文字符常量時,用QStringLiteral修飾中文字符,格式如QStringLiteral(“中文字符”),這種方法必須在每次使用中 文字符時都需要進行修飾,否則還是會出現錯誤,所以比較麻煩。
2、直接在頭文件聲明處添加 #pragma execution_character_set(“utf-8”),直接解決此錯誤。
例:
#if _MSC_VER >= 1600
#pragma execution_character_set("utf-8")
#endif