[Qt] Qt删除文本文件中的某一行

需求

我们经常读一个文件或者直接往一个空白文件中写文本,那么该如何使用Qt在一个文本文件中删除某一行

代码

cpp 复制代码
#include <QCoreApplication>
#include <QIODevice>
#include <QFile>
#include <QTextStream>
#include <QString>
#include <QDebug>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    QFile file(QStringLiteral("F:/QTCode/deleteLineInFile/新建文本文档.txt"));
    QString allText;
    if(file.open(QIODevice::ReadWrite)){
        QTextStream stream(&file);
        stream.setCodec("UTF-8");
        while(!stream.atEnd()){
            QString lineStr = stream.readLine();
            if(lineStr == QStringLiteral("也是")){
                continue;
            }
            allText.append(lineStr);
            if(!stream.atEnd()){
                allText.append('\r');
                allText.append('\n');
            }
        }
        file.close();
        if(file.open(QIODevice::WriteOnly | QIODevice::Truncate)){
            file.write(allText.toUtf8());
            file.close();
            qDebug() << QStringLiteral("操作成功");
        }else{
            qDebug() << QStringLiteral("写文件失败");
        }
    }else{
        qDebug() << QStringLiteral("打开文件失败");
    }
    return a.exec();
}
相关推荐
adsadswee5 小时前
Qt 样式与 QLinearGradient 渐变详解
开发语言·qt·qt样式表·qlineargradient·qss渐变效果
feiyangqingyun6 小时前
Qt优化onvif设备搜索/一键批量搜索/onvif设备模拟器/几千路并发/实时推流/虚拟监控摄像头
qt·onvif模拟器
wd_cloud7 小时前
QT/6.7.2/Creator编译Windows64 MySQL驱动
开发语言·qt·mysql
Source.Liu12 小时前
【LibreCAD】LC_UndoSection 类详解
qt·cad
27399202913 小时前
qt 获取IP地址(公网 本机)
qt·tcp/ip·php
ULTRA??14 小时前
QT向量实现GJK碰撞检测算法几何图形二维版本
c++·qt·算法
我要升天!14 小时前
QT -- QSS界面优化
开发语言·c++·qt
lenkco17 小时前
修改QtConcurrent::run支持任意参数
开发语言·c++·qt
葱卤山猪17 小时前
【Qt】 TCP套接字通信学习文档
qt·学习·tcp/ip
ULTRA??17 小时前
QT向量类实现GJK碰撞检测算法3d版本
c++·qt·算法