Qt 4.8.4 解决中文字体问题

来源:互联网 发布:c语言计算元音字母 编辑:程序博客网 时间:2024/05/16 11:09

Qt版本:Qt 4.8.4  静态编译

系统:Windows 7 旗舰版


好多用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);
    MainWindow w;
    w.show();
    
    return a.exec();
}
这样写一个main函数就可以;

我在实际编写过程中,发现他们只说了一方面,这样是获取系统编码,可是,Qt文件默认编码是UTF-8,文本保存的编码也是UTF-8,这样获取的编码并不是windows的,而是UTF-8的,重新选择一下.cpp与.h文件的编码方式就可以了,我看了一下,默认确实是utf-8,修改为system,然后根据编码保存重新载入就可以解决这个变态问题

原创粉丝点击