QT解决中文乱码

一、如果编译器在支持C++11的情况下,我们可以使用u8"XXXX"

如:QString str = u8"我是中文";

这样就解决了中文乱码的问题,使用UTF-8编码

 

二、我经常在代码中使用QStringLiteral("中文")

三、也可以使用下面的方法

#if QT_VERSION < 0x050000
    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
    QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
#endif
    QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));

 

posted @ 2019-09-27 11:38  徐沛东  阅读(934)  评论(0编辑  收藏  举报