网上很多关于QT中文乱码的问题及答案,但情况不同解决方法也不一样。
本方案适用于VS2013+QT5.3环境(编译器是VC)
using namespace std; # pragma execution_character_set("utf-8") //文件的开头要声明字符编码UTF-8,这样输出中文字符串就能显示正常。
qDebug() << " 连接交易前置...成功" ;
直接输出字符串是没问题了,但遇到char*[]这样的字符数组的时候显示中文还是会有问题,应该是VS环境下默认是GBK编码
在MAIN函数中添加设置本地编码GBK
QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK"));
在遇到字符数组的时候使用
QString::fromLocal8Bit(pRspInfo->ErrorMsg)
进行转换便能正常显示中文。