[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();
}
相关推荐
yugi98783810 分钟前
基于Qt的实用二维码生成解决方案
开发语言·qt
不爱吃糖的程序媛2 小时前
环境搭建教程:HarmonyOS PC 录屏工具(Qt5 + OHOS Native Media)
qt·华为·harmonyos
-凌凌漆-3 小时前
【Qt】C++中protected与private的区别
开发语言·c++·qt
-凌凌漆-3 小时前
Qt QML应用层框架
开发语言·qt
走好每一步21 小时前
1、VTK+QT + cmake编程 三维圆柱体
qt·vtk
小小码农Come on1 天前
Qt::WA_StyledBackground属性的作用
开发语言·qt
秋田君1 天前
2026 前端新出路:掌握 C++ 核心语法,无缝衔接 QT 桌面开发
前端·c++·qt
走好每一步1 天前
0、VDK编译 CMake + VS2017 x64
qt·vtk·三维图像
雪的季节1 天前
Qt多窗口架构设计需求简介
开发语言·qt
jingshaoqi_ccc2 天前
windows 10系统下QT的安装及在Visual studio中的扩展安装
windows·qt·visual studio