Qt 最头疼的问题就是遇到中文字体乱码问题,因为程序调用的还是插件,没办法调试,
一般的解决方案是:
- int main(int argc, char *argv[])
- {
- QApplication a(argc, argv);
- QTextCodec *codec = QTextCodec::codecForName(“System”); //获取系统编码
- QTextCodec::setCodecForLocale(codec);
- QTextCodec::setCodecForCStrings(codec);
- QTextCodec::setCodecForTr(codec);
- return a.exec();
- }
setCodecForLocale 等函数在QApplication 前后调用都没有关系,
关键是codecForName(“System”)是否返回正确的QTextCodec
"gb18030"
"GB2312"
给定的字符串一定要准确,否则还是会乱码 这里一定要小心;
本文将介绍Qt程序中遇到中文字体乱码问题的解决方案,包括如何正确设置系统编码,确保文本显示正常。
3153

被折叠的 条评论
为什么被折叠?



