• 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("中文显示"));

  • 相关阅读:
    操作系统、存储介质以及电信行业单位换算差异
    Luogu P1659 [国家集训队]拉拉队排练
    AC自动机
    KMP
    Luogu P1470 最长前缀 Longest Prefix
    Luogu P2292 [HNOI2004]L语言
    Manacher算法
    字典(Trie)树
    逆序对
    vs
  • 原文地址:https://www.cnblogs.com/Kernel001/p/8254242.html
Copyright © 2020-2023  润新知