QBuffer 是 Qt 提供的一个类,用于在内存中操作二进制数据。它是 QIODevice 的一个子类,允许你将数据读入和写出到一个内存缓冲区,而不需要与文件系统交互。
常用方法
-  
构造函数:
QBuffer(QObject *parent = nullptr): 创建一个空的QBuffer对象。QBuffer(QByteArray *array, QObject *parent = nullptr): 使用指定的QByteArray创建QBuffer对象,允许对该字节数组的直接读写。
 - 其他方法: 
  
isOpen() const: 检查缓冲区是否打开。open(OpenMode mode): 打开缓冲区以进行读写操作。close(): 关闭缓冲区。readData(char *data, qint64 maxSize): 从缓冲区中读取数据。writeData(const char *data, qint64 maxSize): 向缓冲区写入数据。setData(const QByteArray &data): 设置缓冲区的数据。data() const: 获取当前缓冲区中的数据。seek(qint64 pos): 移动读写位置。pos() const: 获取当前读写位置。-  
atEnd() const:判断是否已经读取到缓冲区的末尾。
 -  
size() const:返回缓冲区的大小。
 
 
QByteArray byteArray;
QBuffer buffer(&byteArray);
buffer.open(QIODevice::WriteOnly);
buffer.write("Hello, world!");
buffer.close();
qDebug() << "Buffer data:" << byteArray; // 输出: Buffer data: "Hello, world!"
buffer.open(QIODevice::ReadOnly);
QByteArray data = buffer.readAll();
buffer.close();
qDebug() << "Read from buffer:" << data; // 输出: Read from buffer: "Hello, world!"
 
觉得有帮助的话,打赏一下呗。。
           



![[Linux#67][IP] 报头详解 | 网络划分 | CIDR无类别 | DHCP动态分配 | NAT转发 | 路由器](https://img-blog.csdnimg.cn/img_convert/32eb110884f0d038d790c84104eb0ffe.jpeg)




![[枚举坤坤]二进制枚举基础](https://i-blog.csdnimg.cn/direct/e3b056fea3ad4a4aa7ec6bef68c4565a.jpeg)










