Qt在直接打印中文,或者对话框标题设置为中文时,会输出乱码,如下所示。
qDebug() << "打开文件";
QString path = QFileDialog::getOpenFileName(this, tr("打开文件"));
在使用MinGW64-bit时,可以正常显示中文。
而使用MSVC编译,会出现乱码,如下图。
针对以上问题,可以用QString::fromLocal8Bit方法来解决。
qDebug() << QString::fromLocal8Bit("打开文件");
QString path = QFileDialog::getOpenFileName(this, QString::fromLocal8Bit("打开文件"));
用这种方法可以正常打印出中文。