首页 > 代码库 > Qt5中文乱码解决方法
Qt5中文乱码解决方法
在qt5中,中文乱码的解决是一个比较蛋疼的问题,因为qt5中取消了qt4中的一些设置编码的成员函数,我个人是没弄明白为什么会这样。而且更蛋疼的是,中文乱码并不是任何时候都会出现。有时候部分中文能正常显示,例如“用户名”,用户两个字可以正确显示,但是名字却是乱码。。。
今天在编写程序的时候,发现在设置QPushButton的文本时用中文可以正确显示,但是在设置QLabel的文本时就会出现乱码,当时就慌了吧。。。在网上各种百度之后,找到两种有效地方法:
方法一:setText(QStringLiteral(
"中文"
)); 在设置文本时,用QStringLiteral函数转换之后就可以正确显示中文,
亲测有效
方法二:
QTextCodec *codec = QTextCodec::codecForName(
"GB18030"
);
setWindowTitle(codec->toUnicode(
"中文"
));这种方法比较麻烦,至少我感觉比上面的方法麻烦。
关于网上的其他各种方法,试过一些没有用,例如将文件编码设置为utf-8.。。。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。