Qt文件系统-文本文件读写

实例功能概述

文本文件是指以以纯文本格式存储的文件,例如用 Qt Creator 编写的 C++ 程序的头文件和源文件。HTML 和 XML 文件也是纯文本文件,只是读取之后需要对内容进行解析之后再显示。

Qt 提供了两种读写纯文本文件的基本方法,一种是用 QFile类的 QIODevice读写功能直接进行读写,另一种是利用 QFileQTextStream结合起来,用流(Stream)的方法进行文件读写。

我编写了一个例子来展示这两种方法读写文本文件的效果,现在运行结果:

QFile 读写文本

文件读取

QFile 类是直接和 IO 设备打交道的,进行文件读写操作的类,使用 QFile 可以直接打开或保存文本文件。图中“QFile 直接打开“按钮用 QFile 类的功能直接打开文本文件,按钮的槽函数及相关函数代码如下:

void MainWindow::on_actOpen_IODevice_triggered()
{
   
   //打开文件

    QString curPath=QDir::currentPath();//获取系统当前目录
    QString dlgTitle="打开一个文件"; //对话框标题
    QString filter="程序文件(*.h *.cpp);;文本文件(*.txt);;所有文件(*.*)"; //文件过滤器
    QString aFileName=QFileDialog::getOpenFileName(this,dlgTitle,curPath,filter);

    if (aFileName.isEmpty())
        return;

    openTextByIODevice(aFileName);
}
bool MainWindow::openTextByIODevice(const QString &aFileName)
{
   
   //用IODevice方式打开文本文件
    QFile   aFile(aFileName);
//    aFile.setFileName(aFileName);

    if (!aFile.exists()) //文件不存在
        return false;

    if (!aFile.open(QIODevice::ReadOnly | QIODevice::Text))
        return false;

    ui->textEditDevice->setPlainText(aFile.readAll()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值