void write(QString filename) {
QChar ch('b');
QFile mfile(filename);
if (!mfile.open(QFile::WriteOnly) {
qDebug() << "Could not open file for writing";
return;
}
QDataStream out(&mfile);
out.setVersion(QDataStream::Qt_4_8);
out << ch;
mfile.close();
}
打开二进制文件并写入“ b”(二进制)
void read(QString filename) {
QFile mfile(filename);
if (!mfile.open(QFile::ReadOnly)) {
qDebug() << "Could not open file for reading";
return;
}
QDataStream in(&mfile);
in.setVersion(QDataStream::Qt_4_8);
QChar mT;
in >> mT;
qDebug() << mT;
mfile.close();
}
读取但不读取mT ='b'。如果ch和mT变量总是int mT = 4为什么?我该如何写入ch(二进制文件)并从二进制文件读取
最佳答案
4
数字是数据的长度。 QDataStream
在存储数据长度之前,先指出要读取多少字节才能获得写入的数据。您的数据已写入。
关于c++ - qt二进制文件读写,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20603106/