Qt读取文本中最后一行

  1. 背景;
    文本文件中有多个</开头的行,倒数第二行也是“</”开头,“>”的字符串,倒数第一行是文件结束标识。文本如下:

    </1>

    </2>

    现在要读取最后一个“</”开头“>”结尾的行内容需求,代码如下:
    
  2. 代码

 QFile file(filePath);
 	 QString ending;
       if (file.open(QFile::ReadOnly))
       {
       		for(int i=21;i<file.size();i++)
            {
                file.seek(file.size()-i);
                QString tmp=file.read(2);
                if(tmp.compare("</")==0)
                {
                    file.seek(file.size()-i);
                    tmp=file.read(i);
                    for(int j=0;j<tmp.size();j++)
                    {
                        if(tmp.at(j)=='>')
                        {
                            tmp=tmp.left(j+1);
                            ending=tmp;
                        }
                    }
                    break;
                }
            }
       }
       file.close();

版权声明:本文为weixin_43868179原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。