Qt 读取txt文件乱码的解决办法


Qt 读取txt文本乱码问题

2015-05-20 15:46
方法一:使用QString的fromLocal8Bit()函数
  1. QFile txtfile(filePath);             QString tmpStr;             if(txtfile.open(QIODevice::ReadOnly))             {                 QTextCodec::setCodecForLocale(QTextCodec::codecForName("gb2312"));//中文转码声明                 while(!txtfile.atEnd())                 {                     QByteArray arr = txtfile.readAll();                     arr.replace(0x0B,0x0D);                     tmpStr = QString::fromLocal8Bit(arr, arr.length());//Window下的QByteArray转QString                 }              }            item->tableWidget()->item(row-1,column-1)->setText(tmpStr);
//use it
方法二:用QTextCodec的toUnicode方法来显示中文(在程序中试验本方法不适合)    QTextCodec *codec = QTextCodec::codecForLocale();     QString a = codec->toUnicode("安师大手动");


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM