程序运行后 显示的button上推出字样为乱码
请问哪位大侠知道怎么解决
5 个解决方案
#1
编码的问题,在main函数的第二行加上如下代码:
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("gb18030"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("gb18030"));
意思是用tr宏或者QString对象的时候,其中的字符按照gb18030解释
gb18030是*的一个字符集编码标准,类似的还有gb2312,gbk
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("gb18030"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("gb18030"));
意思是用tr宏或者QString对象的时候,其中的字符按照gb18030解释
gb18030是*的一个字符集编码标准,类似的还有gb2312,gbk
#2
得看你的源码使用的是什么编码。
如果源码使用 UTF-8 编码,则 QTextCodec 也应该设置为 UTF-8 .
这是一个源码使用UTF-8编码的例子:
如果源码使用 UTF-8 编码,则 QTextCodec 也应该设置为 UTF-8 .
这是一个源码使用UTF-8编码的例子:
#include <QtCore/QCoreApplication>
#include <QTextCodec>
#include <QTextStream>
#include <stdlib.h> // system
int main(int argc, char *argv[])
{
// or utf8 utf-8 UTF8
QTextCodec *codec = QTextCodec::codecForName("UTF-8");
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForTr(codec);
QCoreApplication a(argc, argv);
QString str("世界,你好!");
QTextStream out(stdout);
#ifdef _WIN32
out.setCodec("GBK");
#endif
out << str << endl;
#ifdef _WIN32
system("pause");
#endif
return 0;
}
#3
thankyou 解决了!
#4
谢谢
thank you
thank you
#5
#1
编码的问题,在main函数的第二行加上如下代码:
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("gb18030"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("gb18030"));
意思是用tr宏或者QString对象的时候,其中的字符按照gb18030解释
gb18030是*的一个字符集编码标准,类似的还有gb2312,gbk
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("gb18030"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("gb18030"));
意思是用tr宏或者QString对象的时候,其中的字符按照gb18030解释
gb18030是*的一个字符集编码标准,类似的还有gb2312,gbk
#2
得看你的源码使用的是什么编码。
如果源码使用 UTF-8 编码,则 QTextCodec 也应该设置为 UTF-8 .
这是一个源码使用UTF-8编码的例子:
如果源码使用 UTF-8 编码,则 QTextCodec 也应该设置为 UTF-8 .
这是一个源码使用UTF-8编码的例子:
#include <QtCore/QCoreApplication>
#include <QTextCodec>
#include <QTextStream>
#include <stdlib.h> // system
int main(int argc, char *argv[])
{
// or utf8 utf-8 UTF8
QTextCodec *codec = QTextCodec::codecForName("UTF-8");
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForTr(codec);
QCoreApplication a(argc, argv);
QString str("世界,你好!");
QTextStream out(stdout);
#ifdef _WIN32
out.setCodec("GBK");
#endif
out << str << endl;
#ifdef _WIN32
system("pause");
#endif
return 0;
}
#3
thankyou 解决了!
#4
谢谢
thank you
thank you