c++ qt二进制文件阅读

w46czmvw  于 2023-02-10  发布在  其他
关注(0)|答案(1)|浏览(135)
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变量是整数,mT=4为什么?我如何写ch(二进制文件)并从二进制文件中读取

yv5phkfx

yv5phkfx1#

4数字是这长度你的数据. QDataStream存储长度你的数据在它之前到表示多少字节需要到读取到获得这写入数据.你的数据已经被写入在它之后.

相关问题