qt显示中文问题

1.在读取txt文件时,txt中中文无法正常显示问题

1.将txt文件存储为ANSI编码格式
2.在qt中使用如下代码

QFile cfgfile(cfg_fileName);//cfg_fileName是文件路径
if (cfgfile.open(QIODevice::ReadOnly| QIODevice::Text))//打开文件
    {
        while(!cfgfile.atEnd())
        {
            QTextCodec *codec=QTextCodec::codecForName("GB2312");
            QString strAll=codec->toUnicode(cfgfile.readLine());//逐行读取
            if(strAll.contains(a,Qt::CaseSensitive))//关键词匹配
            {
                ui->timeline->setText(strAll);//在控件中显示
                break;
            }
        }
    }

2.中文QString显示在对话框中

 QTextCodec *codec=QTextCodec::codecForName("UTF-8");
 QString s = codec->toUnicode("错误");

你可能感兴趣的:(QT)