复制代码
1#include "modify.h"
复制代码
1
复制代码
1modify::modify()
复制代码
1{
复制代码
1readFile=new QFile("E:/xwj/project/moidfy_GPgga/modifyGGA/RxRec20110607_070017.txt");
复制代码
1writeFile=new QFile("E:/xwj/project/moidfy_GPgga/modifyGGA/RxRec20110607_070017.txt");
复制代码
1readTxt();
复制代码
1}
复制代码
1
复制代码
1void modify::readTxt()
复制代码
1{
复制代码
1if(!readFile->open(QIODevice::ReadOnly|QIODevice::Text)) {
复制代码
1qDebug()<<"Can't open the file!"<<endl;
复制代码
1}
复制代码
1else
复制代码
1{
复制代码
1QTextStream stream(readFile);
复制代码
1strAll=stream.readAll();
复制代码
1}
复制代码
1readFile->close();
复制代码
1if(!writeFile->open(QIODevice::WriteOnly|QIODevice::Text))
复制代码
1{
复制代码
1qDebug()<<"Can't write the file!"<<endl;
复制代码
1}
复制代码
1else
复制代码
1{
复制代码
1QTextStream stream(writeFile);
复制代码
1strList=strAll.split("n");
复制代码
1for(int i=0;i<strList.count();i++)
复制代码
1{
复制代码
1if(i==strList.count()-1)
复制代码
1{
复制代码
1//最后一行不需要换行
复制代码
1stream<<strList.at(i);
复制代码
1}
复制代码
1else if(strList.at(i).contains("$PCSI")){
复制代码
1QString s;
复制代码
1strListforPCSI=strList.at(i).split(",");
复制代码
1int p=strListforPCSI.at(9).toInt();
复制代码
1int len=strListforPCSI.at(9).length();
复制代码
1if(p<=13&&p>=10)
复制代码
1p+=3+qrand()%(5-3);
复制代码
1else if(p<=9&&p>=6)
复制代码
1p+=6+qrand()%(8-6);
复制代码
1else if(p<=5&&p>=2)
复制代码
1p+=10+qrand()%(13-10);
复制代码
1else if(p<=2)
复制代码
1p+=13+qrand()%(15-13);
复制代码
1s=QString::number(p);
复制代码
1QString tempStr=strList.at(i);
复制代码
1tempStr.replace(45,len,s);
复制代码
1qDebug()<<"int p:="<<p;
复制代码
1qDebug()<<tempStr;
复制代码
1qDebug()<<"int s="<<s;
复制代码
1stream<<tempStr<<'n';
复制代码
1}
复制代码
1else
复制代码
1{
复制代码
1stream<<strList.at(i)<<'n';
复制代码
1}
复制代码
1}
复制代码
1}
复制代码
1readFile->close();
复制代码
1qDebug()<<"OK!";
复制代码
1}
最后
以上就是甜蜜摩托最近收集整理的关于QT打开txt文件,读取修改,解析数据。的全部内容,更多相关QT打开txt文件内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复