C++工作笔记-在项目中解决编码问题小技巧
生活随笔
收集整理的這篇文章主要介紹了
C++工作笔记-在项目中解决编码问题小技巧
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
這里是在項目中看到某大佬是這樣用的,在此記錄下以后也這樣做,方便日后調試。
在linux上,文件有2個類型的編碼,一個是UTF-8,一個是ASCII。
在使用QtCreator創建項目的時候默認是UTF-8編碼,使用VS產品的時候,文件一般是保存為ASCII碼。
這樣的話就存在一個問題,項目中文件各個編碼不同,解決的方法就是用txt打卡然后另存為編碼。即可。
?
還有給方法可以不用改變編碼,中文也能正常輸出,下面模擬下這種情況。
項目結構如下
文件如下。
Test.pro
QT += core TARGET = test TEMPLATE = appSOURCES += main.cppmain.cpp
#include <QCoreApplication> #include <QDebug>#define _STR QString::fromUtf8int main(int argc, char *argv[]){QCoreApplication a(argc, argv);qDebug() << _STR("看看中文輸出是不是有亂碼");return a.exec();}這里就是通過#define?_STR?QString::fromUtf8
使用_STR去代替輸出,當出現問題的時候,可能解決方法很多,設置編碼集,或者改變文件編碼,或者改變輸出。
這種也是一種方式,在此記錄下!
上面這代碼運行截圖如下:
當代碼是這樣的時候:
#include <QCoreApplication> #include <QDebug>#define _STR QString::fromLocal8Bitint main(int argc, char *argv[]){QCoreApplication a(argc, argv);qDebug() << _STR("看看中文輸出是不是有亂碼");return a.exec();}運行截圖如下:
?
總結
以上是生活随笔為你收集整理的C++工作笔记-在项目中解决编码问题小技巧的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android安全笔记-Intent和P
- 下一篇: Linux笔记-centos7替换yum