qt5 中文乱码,可以在程序中设定使用的字体和编码
QApplication a(argc, argv); //设置中文字体 // a.setFont(QFont("wenquanyi", 16)); int id = QFontDatabase::addApplicationFont("./msyh.ttf"); QString msyh = QFontDatabase::applicationFontFamilies(id).at(0); QFont font(msyh, 10); font.setPointSize(16); a.setFont(font); //设置中文编码 #ifdef _MSC_VER QTextCodec *codec = QTextCodec::codecForName("GBK"); #else QTextCodec *codec = QTextCodec::codecForName("UTF-8"); #endif #if (QT_VERSION <= QT_VERSION_CHECK(5,0,0)) QTextCodec::setCodecForLocale(codec); QTextCodec::setCodecForCStrings(codec); QTextCodec::setCodecForTr(codec); #else QTextCodec::setCodecForLocale(codec); #endif a.installTranslator(&translator); MainWindow w; w.show(); return a.exec();