Qt乱码的问题

1、在启动应用程序前加入以下代码:

1 //配置字符编码环境,让应用程序支持中文。
2     QTextCodec *codec = QTextCodec::codecForName("System");
3     QTextCodec::setCodecForLocale(codec);
4     QTextCodec::setCodecForTr(codec);
5     QTextCodec::setCodecForCStrings(codec); 

2、不在要文本中再次手动指定编码格式

时间: 2024-08-26 01:30:29

Qt乱码的问题的相关文章

QT乱码对策

1 using namespace std; 2 3 //#pragma execution_character_set("UTF-8") 4 int main(int argc, char *argv[]) 5 { 6 QApplication a(argc, argv); 7 QString str = QStringLiteral("中文测试"); 8 //str = "中文测试"; 9 qDebug() << str; 10

QT 中文显示乱码问题

Qt中的中文显示,经常会出现乱码,但在UI设计界面上添加的中文是不会出现乱码的,如果你刚使用qt,那么你肯定会碰到这个问题. 最近用QT编程 发现QT乱码问题  .但大都说是编码问题 ,通研究分析 :出现乱码分为: 1编辑器显示乱码 ,特点是中文注释显示乱码. 解决办法:一般这种乱码是源代码由不同编辑器实现 ,出现代码不兼容 编辑器顶端会提示,然后点击右上角的编辑代码修改编码可以解决. 2软件字符乱码 一些常量  编辑器显示正常 软件运行乱码  界面显示乱码 使用此函数可以解决问题 QStrin

Qt的认识与相关问题的解决

一.Qt程序的步骤 1. 编写源码 a.创建目录,每一个Qt工程都要有一个单独的目录 b.编写入口 QApplication app(argc,argv)://创建应用程序对象 QLabel  lab("你要写的内容");//创建标签对象,此控件专门用来实现文字 lab.show();//显示标签,几乎所有的控件默认都是隐藏的 return app.exec();//把程序的运算交给Qt(监控事件,等待用户操作) 第一句和第四局的格式都是不变的: 2. 生成工程文件:qmake -pr

Qt5遇到的问题

好久没用Qt了,今天又重新安装了一个,结果遇到不少问题 本机环境:VS2015,Qt5.7 装好后,就新建工程测试了一下,结果无法编译,提示 :-1: error: cannot open C:\Users\我的用户名,中文的\AppData\Local\Temp\main.obj.7148.0.jom for write 这一看又是中文路径的问题啊,但是,系统路径,不好改啊,jom是个什么东西?网上搜了一下,得到解决方法: 工具->选项->构建和运行:概要, 取消 <使用jom代替nm

Qt中文乱码问题(比较清楚,同一个二进制串被解释成不同的语言)

文章来源:http://blog.csdn.net/brave_heart_lxl/article/details/7186631 以下是dbzhang关于qt中文乱码问题原因的阐述,觉得不错: 首先呢,声明一下,QString 是不存在中文支持问题的,很多人遇到问题,并不是本身 QString 的问题,而是没有将自己希望的字符串正确赋给QString. 很简单的问题,"我是中文"这样写的时候,它是传统的 char 类型的窄字符串,我们需要的只不过是通过某种方式告诉QString 这四

Qt查询MYSQL中文乱码问题

Qt的默认编码是utf-8,而mysql的编码是在安装数据库(或后续可更改)就时设置的.有时候两者可能不一样,我们不可能去为了匹配Qt而去更改MYSQL的编码(确实可以更改).所以只能在打开数据库连接操作的时候设置编码了,即在QSqlDatabase对象调用open()方法之后设置. 设置方法为: sqldb.exec("SET NAMES 'XXXX'"); 注意:sqldb是一个QSqlDatabase对象,XXXX是MYSQL数据库的编码名称,如我的就是db.exec("

(转)QT中文乱码与国际化支持

Qt内部采用的全Unicode编码,这从根本上保证了多国语界面实现的正确性和便捷性.Qt本身提供的linguist工具,用来实现翻译过程十分方便.MFC中利用资源DLL切换资源,或使用多个RC文件进行不同语言版本编译等方法都十分麻烦,如果你曾经使用过MFC,QT解决多语言问题的便捷性绝对会让你感觉是一种享受.本文讨论以下几个方面内容: 1.  QT中解决中文乱码的方法: 2.  QT中实现国家化支持. 3.  对话框实现多语言 一.       中文乱码 1.  在程序中直接使用中文,需要在程序

qt中文乱码

刚开始学习qt,经常会遇到中文输出乱码,在网上找了解决办法有下面这个两个办法QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));或QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8")); 我试过发现不行,然后翻阅书,发现这行代码可以在主函数里添加一行代码: QTextCodec::setCodecForTr

Qt中QFtp获取带有中文的文件名称出现乱码的解决方法(比较巧妙,toLatin1压缩掉了QString自动给每个英文字符加上的那些00字节)

今天研究了一下QFtp这个类,发现访问得到的文件名称中一旦出现中文,不管怎么转换编码格式,最终显示出来的始终都是乱码.于是我深入地对这一现象进行了研究.这里先简单介绍一下我的分析过程: FTP服务器在收到List指令后,会把当前文件夹的所有项目(包括文件夹和文件的名称,大小,时间,所有者等相关信息)列举出来并返回给FTP客户端.曾经在网上看到有人说过这样一句话:“ftp 在编码问题上相当笨,笨到对编码一无所知”.确实,多数FTP服务器在返回这些名称时采用的文字编码格式为ANSI.这是一个不太好的