文件通过QDataStream读写
时间: 2023-07-08 17:38:06 浏览: 98
QDataStream 是一个用于读写二进制数据的类,可以在不同的平台之间传输数据。以下是一个简单的示例,展示如何通过 QDataStream 读写文件:
```cpp
#include <QFile>
#include <QDataStream>
int main()
{
// 创建一个文件对象
QFile file("data.bin");
// 打开文件
if (!file.open(QIODevice::ReadWrite))
return -1;
// 创建一个 QDataStream 对象,并将其与文件关联
QDataStream stream(&file);
// 写入数据到流中
stream << QString("Hello, world!") << 123 << 3.14;
// 移动指针到文件开头
file.seek(0);
// 从流中读取数据
QString str;
int i;
double d;
stream >> str >> i >> d;
// 输出读取的数据
qDebug() << str << i << d;
// 关闭文件
file.close();
return 0;
}
```
在这个示例中,我们创建了一个文件对象 `file`,并通过 `QIODevice::ReadWrite` 打开该文件。然后,我们创建了一个 QDataStream 对象 `stream`,并将其与文件关联。我们通过流输入运算符 `<<` 将数据写入流中,然后通过流输出运算符 `>>` 从流中读取数据。最后,我们关闭文件。
阅读全文