Qt学习之十七:文件I/O

本文详细介绍了Qt中的QIODevice类如何抽象I/O设备,包括顺序访问和随机访问设备的区别。QFile作为常见文件操作类,支持路径转换,并提供打开、关闭、刷新等操作。QDataStream和QTextStream用于文件读写,而QFileInfo用于获取文件信息。示例代码展示了如何以只读文本模式打开并读取文件内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Qt 通过 QIODevice 提供了对 I/O 设备的抽象,这些设备具有读写字节块的能力。下面是 I/O设备的类图:
这里写图片描述

*  QIODevice:所有 I/O 设备类的父类,提供了字节块读写的通用操作以及基本接口;
*  QFlie:访问本地文件或者嵌入资源;
*  QTemporaryFile:创建和访问本地文件系统的临时文件;
*  QBuffer:读写 QByteArray;
*  QProcess:运行外部程序,处理进程间通讯;
*  QAbstractSocket:所有套接字类的父类;
*  QTcpSocket: TCP 协议网络数据传输;
*  QUdpSocket:传输 UDP 报文;
*  QSslSocket:使用 SSL/TLS 传输数据;
*  QFileDevice: Qt5 新增加的类,提供了有关文件操作的通用实现

这其中, QProcess、 QTcpSocket、 QUdpSoctet 和 QSslSocket 是顺序访问设备。所谓“顺序访问”,是指它们的数据只能访问一遍:从头走到尾,从第一个字节开始访问,直到最后一个字节,中途不能返回去读取上一个字节; QFile、 QTemporaryFile 和 QBuffer 是随机访问设备,可以访问任意位置任意次数,还可以使用 QIODevice::seek() 函数来重新定位文件访问位置指针。

我们通常会将文件路径作为参数传给 QFile 的构造函数。不过也可以在创建好对象最后,使用setFileName() 来修改。 QFile 需要使用 /

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

飞翔的鲲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值