[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();
}
相关推荐
不才小强2 小时前
Qt开发实战:屏幕录制项目中学习到的知识与遇到的难题
qt·音视频
人还是要有梦想的3 小时前
QT的基本学习路线
开发语言·qt·学习
艾莉丝努力练剑3 小时前
【QT】QT快捷键整理
linux·运维·服务器·开发语言·图像处理·人工智能·qt
黑化暴龙魔神--幻梦3 小时前
QT使用TRANSLATIONS添加多国翻译(详细过程)
qt·自动翻译
程序员_大白3 小时前
【2025版】最新Qt下载安装及配置教程(非常详细)零基础入门到精通,收藏这篇就够了
开发语言·qt
我在人间贩卖青春3 小时前
Qt多媒体编程
qt·多媒体编程
高亚奇3 小时前
QT版本 MSVC/MinGW/GCC 含义及如何区分
开发语言·qt
IdahoFalls3 小时前
QT-Windows Kits-版本问题:【“_mm_loadu_si64”: 找不到标识符】解决方案[NEW]
开发语言·c++·windows·qt·算法·visual studio
希忘auto3 小时前
详解关于VS配置好Qt环境之后但无法打开ui界面
qt·vs
希忘auto3 小时前
详解VS2022集成Qt及扩展Qt VS Tools的安装
qt·vs