QT系列——读写文本文件

网友投稿 1992 2022-05-30

本文主要描述如何使用Qt读写文本文件。Qt提供了Qfile类,主要用于文本文件的读写等操作管理。

下面分别通过读取文件和写文件来分开描述。

读文件

QT系列——读写文本文件

读取文件流程如下图:

创建文件对象,指定文件名称。

Qt使用QFile类来打开文本文件,创建对象时,可以直接指定文件名称。

例如:

QFile file("demo.txt");

也可以创建文件对象后,通过函数setFileName再指定。

例如:

QFile file; file.setFileName("demo.txt");

判断文件是否存在

QFile类提供以下函数来判断文件是否已经存在:

bool QFile::exists() const

代码示例:

QFile file("demo.txt"); if(file.exists()) { qDebug()<<"exists true"; } else { qDebug()<<"exists false"; }

打开文件

读取文件前,需要先打开文件。

如果只是读取文件,使用打开模式QIODevice::ReadOnly就可以了。因为读取的是文本文件,打开模式可以设置为QIODevice::Text;

代码示例:

QFile file("demo.txt"); if(file.open(QIODevice::ReadOnly | QIODevice::Text)) { // 打开成功 } else { // 打开失败 }

如果打开文件成功,就可以执行后续读取等步骤;

如果打开文件失败,则无法进行后续读取操作。

打开文件失败时,可以通过函数打印出错信息。

Qt提供函数:

QString QIODevice::errorString() const;该函数可以打印出错误信息。

QFileDevice::FileError QFileDevice::error() const; 该函数可以打印出错误码。

获取文件内容;

readAll():读取全部文件内容。

readLine():按行读取内容;

返回内容为QByteArray,可以直接转为QString。

关闭文件

文档成功打开后,结束操作后,一定要记得关闭文件。

结束

读取文件操作结束。

写文件

写文件与读文件逻辑差不多,区别在于打开方式,以及调用写入函数(读取调用读取函数)。

写文件在打开文件时,需要设置打开模式与可写模式:QIODevice::WriteOnly;

文件写入函数:qint64 QIODevice::write(const QByteArray &byteArray)。

文件写入结束后,一定要记得关闭文件。

其他

Qt也可以通过QFile + QTextSream的方式来读写内容,这里不详细说明啦。

Qt

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:laravel insert 、save、update、create区别(总结二)
下一篇:《软件需求分析(第二版)》第 6 章——获取客户的需求 重点部分总结
相关文章