标签:qt5
在qt5中,中文乱码的解决是一个比较蛋疼的问题,因为qt5中取消了qt4中的一些设置编码的成员函数,我个人是没弄明白为什么会这样。而且更蛋疼的是,中文乱码并不是任何时候都会出现。有时候部分中文能正常显示,例如“用户名”,用户两个字可以正确显示,但是名字却是乱码。。。
今天在编写程序的时候,发现在设置QPushButton的文本时用中文可以正确显示,但是在设置QLabel的文本时就会出现乱码,当时就慌了吧。。。在网上各种百度之后,找到两种有效地方法:
方法一:setText(QStringLiteral(
"中文"
));
在设置文本时,用QStringLiteral函数转换之后就可以正确显示中文,
亲测有效
方法二:
QTextCodec *codec = QTextCodec::codecForName(
"GB18030"
);
setWindowTitle(codec->toUnicode(
"中文"
));这种方法比较麻烦,至少我感觉比上面的方法麻烦。
关于网上的其他各种方法,试过一些没有用,例如将文件编码设置为utf-8.。。。
标签:qt5
原文地址:http://blog.csdn.net/wxb1553725576/article/details/25229445