QDataStream 的用法
时间: 2024-09-19 16:14:25 浏览: 43
QTcpSocket通讯发送QDataStream序列化数据
5星 · 资源好评率100%
`QDataStream`是Qt提供的一种用于在内存、文件或其他流之间高效地读写结构化数据的数据流类。它允许你方便地序列化和反序列化对象,使得跨进程通信或者持久化数据变得简单。以下是基本的用法:
1. **序列化(保存对象到流中)**:
```cpp
QDataStream out( ostr, QIODevice::WriteOnly );
YourObject yourObj; // 初始化对象
out << yourObj; // 将对象写入流
```
在这里,`ostr`是你要写入的输出设备(如文件、内存等),`<<`运算符用于将对象写入流。
2. **反序列化(从流中恢复对象)**:
```cpp
QDataStream in( istream, QIODevice::ReadOnly );
YourObject yourObj;
in >> yourObj; // 从流中读取对象并赋值给yourObj
```
`istream`是你从其中读取的输入设备。
3. **支持多种数据类型**:
`QDataStream`可以处理多种数据类型,包括整数、浮点数、字符串、数组、容器等等。例如,`out << "Hello" << 42 << yourVector;`
阅读全文