Qt之解决界面中文乱码问题

许多刚入门学习Qt的人会发现中文界面会出现乱码,其实解决这个问题十分简单,直接参考如下:

首先包含头文件:

#include 


方法一:

  QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK"));
  QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GBK"));
  QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK"));

        这里所起的作用就是将代码中字符串编码转换为GBK编码,当然也可以选择UTF-8等编码方式。但是有一点需要注意,那就是这里的编码方式要跟代码文件编码格式一致。本文中我的代码编码格式为GBK,所以本句代码中格式为GBK。

       简单介绍一下UTF-8、GB18030、GBK、GB2312编码方式,它们的范围是:UTF-8>GB18030>GBK>GB2312。

方法二:

  QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
  QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());

         以上2个方法都可以都可以,直接加在主函数main内即可~

你可能感兴趣的:(Qt)