qt中默认解析的编码格式是utf8格式,vs的编码格式是gbk给qt控件设置内容,有中文,必须是utf8编码。
左侧选择文件,右侧找到高级保存选项,点击确定设置编码为utf8,BOM编码。
Qt是一个跨平台的C++图形用户界面(GUI)库。Qt提供了一个统一的编码方案,即Unicode编码。Unicode编码是一种跨平台的字符编码方案,它可以表示世界上所有的文字。Qt在源代码中提供了一个宏定义,即UNICODE宏,用于指定程序使用的编码方式。如果在编译时定义了UNICODE宏,那么程序将使用Unicode编码方式来进行编码,如果没有定义,那么程序将使用平台默认的编码方式。通常来说,UNICODE宏定义位于Qt的头文件中,例如qglobal.h文件。您可以通过查看该文件来了解具体的定义方式。windows下默认是GBK的编码格式,如果想使用UTF8就要先修改Qt Creator的编码格式,方法如下Tools->Options->Environment->General->Default file encoding
修改好UTF8格式之后,再创建工程,就可以显示UTF8格式的汉字了
代码如下:
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF8"))
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF8"))
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF8"))
qDebug()<<"不怕神一样的对手,就怕猪一样的队友"
或者使用这样输出
QTextCodec* codec = QTextCodec::codecForName("UTF8")
QString str = codec->toUnicode("不怕神一样的对手,就怕猪一样的队友")
qDebug()<<str
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)