Qt Creator 中文亂碼問題


一、 Qt 4 亂碼問題 解決方案

1. 在Qt 中 快捷菜單選項功能中

  Edit(編輯)  --> Select Encoding...(選擇編碼)

  選擇載入(顯示)編碼和儲存編碼,要解決中文亂碼問題,選擇 GB2312和UTF-8常用編碼方式 就可以 

 

2.在 Qt 快捷菜單選項中依次選擇

  Tools --> Options --> Text Editor --> Behavior --> File Encodings

  選擇默認編碼方式 UTF-8 或 GBK(gbk) 字符集

 

3. 在(main.cpp )代碼中

#include <QTextCodec>  

 QTextCodec *codec = QTextCodec::codecForName("utf8"); //GBK gbk  
   QTextCodec::setCodecForTr(codec);  
   QTextCodec::setCodecForLocale(codec);  
   QTextCodec::setCodecForCStrings(codec);

二、Qt 5 亂碼問題 解決方案:

由於 Qt 5 中移除了 <QTextCodec> 中一些函數 所以就不能像Qt 4 版本樣解決

但是在QString 類中

1. 有個靜態字符轉碼函數  QString::fromLocal8Bit  --> 轉碼成Unicode 這樣就能解決中文亂碼問題了

2. QStringLiteral 

  不過在Qt5中,提供了一個專門的處理宏,來支持中文常量,那就是QStringLiteral,但它只能處理常量。

  QMessageBox::information(this, QString::fromLocal8Bit("提示"), QStringLiteral("中文顯示"));

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM