您的位置:首页 > 编程语言 > Qt开发

QT读取文件出现乱码的问题

2015-04-01 14:58 399 查看
QT中QString保存读取的内容出现乱码是因为编码方式不正确,给出以下两种方法:

1、 QTextCodec::setCodecForCStrings( QTextCodec::codecForName("GBK"));

 QString str;

        QFile file("./test.txt");

        if(!file.open(QIODevice::ReadOnly | QIODevice::Text ))

        {

            return;

        }

        while( file.atEnd() == 0 )

        {

            QString linestr;

            linestr = file.readLine();

            str += linestr;

            str += "\r\n";

        }

读取完成后打印出str

2、 QString str;

        QFile file("./test.txt");

        if(!file.open(QIODevice::ReadOnly | QIODevice::Text ))

        {

            return;

        }

        QTextCodec *code=QTextCodec::codecForName("GBK");

       QTextStream rstream( &file );

       rstream.setCodec( code );

        while( rstream.atEnd() == 0 )

        {

            QString linestr;

            linestr = rstream.readLine();

            str += linestr;

            str += "\r\n";

        }

        读取完成后打印str
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: