//====写==========
QFile file("file.dat");
file.open(QIODevice::WriteOnly);
QDataStream out(&file);
out << QString("the answer is");
out << (qint32)42;
//====读===============================
QFile file("file.dat");
file.open(QIODevice::ReadOnly);
QDataStream in(&file);
QString str;
qint32 a;
in >> str >> a;
如果是自定义POD数据结构,
T t;
QByteArray ba = file.readAll();
char * p = ba.data();
memcpy(&t, p, sizeof(t)); //或 t = *( (T*)p);
p += sizeof(t); //偏移指针
//继续取值